[syzbot] [media?] memory leak in dvb_register_frontend

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-kernel,org.kernel.vger.linux-media
Message-ID <[email protected]>
Hello,

syzbot found the following issue on:

HEAD commit:    26260251022f Merge tag 'livepatching-for-7.3' of git://git..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=179ac415580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=6c1b5958b2d1207f
dashboard link: https://syzkaller.appspot.com/bug?extid=32f018fd65e799f79ae0
compiler:       gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=15f99549580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/0f75e7622b1f/disk-26260251.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/2bbff9fd7b60/vmlinux-26260251.xz
kernel image: https://storage.googleapis.com/syzbot-assets/95d733004907/bzImage-26260251.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

BUG: memory leak
unreferenced object 0xffff888104d8ec00 (size 1024):
  comm "swapper/0", pid 1, jiffies 4294937925
  hex dump (first 32 bytes):
    00 cf b9 05 81 88 ff ff 00 00 00 00 00 00 00 00  ................
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace (crc 284558ee):
    kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline]
    slab_post_alloc_hook mm/slub.c:4599 [inline]
    slab_alloc_node mm/slub.c:4919 [inline]
    __kmalloc_cache_noprof+0x359/0x440 mm/slub.c:5480
    _kmalloc_noprof include/linux/slab.h:988 [inline]
    _kzalloc_noprof include/linux/slab.h:1309 [inline]
    dvb_register_frontend+0xad/0x2b0 drivers/media/dvb-core/dvb_frontend.c:3047
    vidtv_bridge_dvb_init drivers/media/test-drivers/vidtv/vidtv_bridge.c:438 [inline]
    vidtv_bridge_probe+0x1f6/0x420 drivers/media/test-drivers/vidtv/vidtv_bridge.c:510
    platform_probe+0x86/0xf0 drivers/base/platform.c:1507
    call_driver_probe drivers/base/dd.c:628 [inline]
    really_probe+0x12f/0x3a0 drivers/base/dd.c:706
    __driver_probe_device+0xe9/0x1a0 drivers/base/dd.c:868
    driver_probe_device+0x28/0xf0 drivers/base/dd.c:898
    __driver_attach drivers/base/dd.c:1292 [inline]
    __driver_attach+0x10a/0x200 drivers/base/dd.c:1232
    bus_for_each_dev+0xb8/0x120 drivers/base/bus.c:383
    bus_add_driver+0x122/0x280 drivers/base/bus.c:763
    driver_register+0xb1/0x140 drivers/base/driver.c:174
    vidtv_bridge_init+0x52/0x80 drivers/media/test-drivers/vidtv/vidtv_bridge.c:602
    do_one_initcall+0x74/0x430 init/main.c:1353
    do_initcall_level init/main.c:1415 [inline]
    do_initcalls init/main.c:1431 [inline]
    do_basic_setup init/main.c:1451 [inline]
    kernel_init_freeable+0x2a9/0x340 init/main.c:1666
    kernel_init+0x20/0x1d0 init/main.c:1556
    ret_from_fork+0x219/0x490 arch/x86/kernel/process.c:158

BUG: memory leak
unreferenced object 0xffff888105b9cf00 (size 192):
  comm "swapper/0", pid 1, jiffies 4294937926
  hex dump (first 32 bytes):
    00 01 00 00 00 00 ad de 22 01 00 00 00 00 ad de  ........".......
    01 00 00 00 00 00 00 00 00 3a 95 03 81 88 ff ff  .........:......
  backtrace (crc 9bd60cfd):
    kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline]
    slab_post_alloc_hook mm/slub.c:4599 [inline]
    slab_alloc_node mm/slub.c:4919 [inline]
    __kmalloc_cache_noprof+0x359/0x440 mm/slub.c:5480
    _kmalloc_noprof include/linux/slab.h:988 [inline]
    _kzalloc_noprof include/linux/slab.h:1309 [inline]
    dvb_register_device+0x117/0xac0 drivers/media/dvb-core/dvbdev.c:472
    dvb_register_frontend+0x1d0/0x2b0 drivers/media/dvb-core/dvb_frontend.c:3074
    vidtv_bridge_dvb_init drivers/media/test-drivers/vidtv/vidtv_bridge.c:438 [inline]
    vidtv_bridge_probe+0x1f6/0x420 drivers/media/test-drivers/vidtv/vidtv_bridge.c:510
    platform_probe+0x86/0xf0 drivers/base/platform.c:1507
    call_driver_probe drivers/base/dd.c:628 [inline]
    really_probe+0x12f/0x3a0 drivers/base/dd.c:706
    __driver_probe_device+0xe9/0x1a0 drivers/base/dd.c:868
    driver_probe_device+0x28/0xf0 drivers/base/dd.c:898
    __driver_attach drivers/base/dd.c:1292 [inline]
    __driver_attach+0x10a/0x200 drivers/base/dd.c:1232
    bus_for_each_dev+0xb8/0x120 drivers/base/bus.c:383
    bus_add_driver+0x122/0x280 drivers/base/bus.c:763
    driver_register+0xb1/0x140 drivers/base/driver.c:174
    vidtv_bridge_init+0x52/0x80 drivers/media/test-drivers/vidtv/vidtv_bridge.c:602
    do_one_initcall+0x74/0x430 init/main.c:1353
    do_initcall_level init/main.c:1415 [inline]
    do_initcalls init/main.c:1431 [inline]
    do_basic_setup init/main.c:1451 [inline]
    kernel_init_freeable+0x2a9/0x340 init/main.c:1666
    kernel_init+0x20/0x1d0 init/main.c:1556

connection error: failed to recv *flatrpc.ExecutorMessageRawT: read tcp 127.0.0.1:35893->127.0.0.1:38908: read: connection reset by peer


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.