[syzbot] [usb?] memory leak in hidg_bind
syzbot <[email protected]>
| Newsgroups | org.kernel.vger.linux-usb,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Hello, syzbot found the following issue on: HEAD commit: 9a143525f62b Merge tag 'ata-7.2-rc7' of git://git.kernel.o.. git tree: upstream console output: https://syzkaller.appspot.com/x/log.txt?x=17edefb9580000 kernel config: https://syzkaller.appspot.com/x/.config?x=6843f8fd2336602d dashboard link: https://syzkaller.appspot.com/bug?extid=60740c6a17a5b5eb1f5a 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=1061fe49580000 C reproducer: https://syzkaller.appspot.com/x/repro.c?x=10c06fb9580000 Downloadable assets: disk image: https://storage.googleapis.com/syzbot-assets/689093bae5bf/disk-9a143525.raw.xz vmlinux: https://storage.googleapis.com/syzbot-assets/a57b87e6032d/vmlinux-9a143525.xz kernel image: https://storage.googleapis.com/syzbot-assets/508c649c8b0f/bzImage-9a143525.xz IMPORTANT: if you fix the issue, please add the following tag to the commit: Reported-by: [email protected] 2026/08/08 09:35:22 executed programs: 5 BUG: memory leak unreferenced object 0xffff888112450300 (size 128): comm "syz.0.18", pid 5923, jiffies 4294943868 hex dump (first 32 bytes): 00 03 45 12 81 88 ff ff 00 03 45 12 81 88 ff ff ..E.......E..... 30 00 b2 03 81 88 ff ff 00 00 00 00 00 00 00 00 0............... backtrace (crc 18381426): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4597 [inline] slab_alloc_node mm/slub.c:4917 [inline] __kmalloc_cache_noprof+0x356/0x440 mm/slub.c:5485 _kmalloc_noprof include/linux/slab.h:988 [inline] _kzalloc_noprof include/linux/slab.h:1309 [inline] dummy_alloc_request+0x65/0xf0 drivers/usb/gadget/udc/dummy_hcd.c:693 usb_ep_alloc_request+0x2e/0xd0 drivers/usb/gadget/udc/core.c:197 hidg_bind+0x2b/0x490 drivers/usb/gadget/function/f_hid.c:1154 usb_add_function+0xca/0x270 drivers/usb/gadget/composite.c:333 configfs_composite_bind+0x667/0x9b0 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0xed/0x390 drivers/usb/gadget/udc/core.c:1662 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 usb_gadget_register_driver_owner+0x69/0xe0 drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x153/0x1e0 drivers/usb/gadget/configfs.c:300 BUG: memory leak unreferenced object 0xffff888112c7bf00 (size 128): comm "syz.0.20", pid 5967, jiffies 4294944502 hex dump (first 32 bytes): 00 bf c7 12 81 88 ff ff 00 bf c7 12 81 88 ff ff ................ 30 00 b2 03 81 88 ff ff 00 00 00 00 00 00 00 00 0............... backtrace (crc cd50bb2e): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4597 [inline] slab_alloc_node mm/slub.c:4917 [inline] __kmalloc_cache_noprof+0x356/0x440 mm/slub.c:5485 _kmalloc_noprof include/linux/slab.h:988 [inline] _kzalloc_noprof include/linux/slab.h:1309 [inline] dummy_alloc_request+0x65/0xf0 drivers/usb/gadget/udc/dummy_hcd.c:693 usb_ep_alloc_request+0x2e/0xd0 drivers/usb/gadget/udc/core.c:197 hidg_bind+0x2b/0x490 drivers/usb/gadget/function/f_hid.c:1154 usb_add_function+0xca/0x270 drivers/usb/gadget/composite.c:333 configfs_composite_bind+0x667/0x9b0 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0xed/0x390 drivers/usb/gadget/udc/core.c:1662 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 usb_gadget_register_driver_owner+0x69/0xe0 drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x153/0x1e0 drivers/usb/gadget/configfs.c:300 connection error: failed to recv *flatrpc.ExecutorMessageRawT: EOF --- 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