[syzbot] [can?] memory leak in j1939_netdev_start (2)

From: syzbot

Date: Fri Aug 21 2026 - 20:10:55 EST


Hello,

syzbot found the following issue on:

HEAD commit: 8d3ae59288f1 Linux 7.2
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=14728679580000
kernel config: https://syzkaller.appspot.com/x/.config?x=11ad91fcc8fa7933
dashboard link: https://syzkaller.appspot.com/bug?extid=489e907b2a026a6f5fa0
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=165f3949580000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14c8b6c6580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/735a458674ac/disk-8d3ae592.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/fbf50adb0745/vmlinux-8d3ae592.xz
kernel image: https://storage.googleapis.com/syzbot-assets/6effa5f7f690/bzImage-8d3ae592.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+489e907b2a026a6f5fa0@xxxxxxxxxxxxxxxxxxxxxxxxx

BUG: memory leak
unreferenced object 0xffff88812c9ca000 (size 8192):
comm "syz.0.17", pid 6047, jiffies 4294942443
hex dump (first 32 bytes):
c0 36 87 2e 81 88 ff ff c0 36 87 2e 81 88 ff ff .6.......6......
00 00 00 00 00 00 00 00 00 80 77 2e 81 88 ff ff ..........w.....
backtrace (crc d013ab57):
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]
j1939_priv_create net/can/j1939/main.c:131 [inline]
j1939_netdev_start+0x168/0x710 net/can/j1939/main.c:268
j1939_sk_bind+0x223/0x5a0 net/can/j1939/socket.c:506
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff88812e8736c0 (size 192):
comm "syz.0.17", pid 6047, jiffies 4294942443
hex dump (first 32 bytes):
00 a0 9c 2c 81 88 ff ff 00 a0 9c 2c 81 88 ff ff ...,.......,....
08 07 06 05 04 03 02 01 20 00 00 00 00 00 00 00 ........ .......
backtrace (crc 2ba0e4b2):
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]
j1939_ecu_create_locked+0x5c/0x200 net/can/j1939/bus.c:155
j1939_local_ecu_get+0x102/0x140 net/can/j1939/bus.c:293
j1939_sk_bind+0x38c/0x5a0 net/can/j1939/socket.c:529
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff88812c9c8000 (size 8192):
comm "syz.0.24", pid 6048, jiffies 4294942445
hex dump (first 32 bytes):
40 ab e4 12 81 88 ff ff 40 ab e4 12 81 88 ff ff @.......@.......
00 00 00 00 00 00 00 00 00 80 77 2e 81 88 ff ff ..........w.....
backtrace (crc da7feccc):
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]
j1939_priv_create net/can/j1939/main.c:131 [inline]
j1939_netdev_start+0x168/0x710 net/can/j1939/main.c:268
j1939_sk_bind+0x223/0x5a0 net/can/j1939/socket.c:506
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff888112e4ab40 (size 192):
comm "syz.0.24", pid 6048, jiffies 4294942445
hex dump (first 32 bytes):
00 80 9c 2c 81 88 ff ff 00 80 9c 2c 81 88 ff ff ...,.......,....
08 07 06 05 04 03 02 01 20 00 00 00 00 00 00 00 ........ .......
backtrace (crc 73ecd91d):
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]
j1939_ecu_create_locked+0x5c/0x200 net/can/j1939/bus.c:155
j1939_local_ecu_get+0x102/0x140 net/can/j1939/bus.c:293
j1939_sk_bind+0x38c/0x5a0 net/can/j1939/socket.c:529
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff88812c9d6000 (size 8192):
comm "syz.0.25", pid 6050, jiffies 4294942445
hex dump (first 32 bytes):
80 3d 69 13 81 88 ff ff 80 3d 69 13 81 88 ff ff .=i......=i.....
00 00 00 00 00 00 00 00 00 80 77 2e 81 88 ff ff ..........w.....
backtrace (crc cb2b95df):
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]
j1939_priv_create net/can/j1939/main.c:131 [inline]
j1939_netdev_start+0x168/0x710 net/can/j1939/main.c:268
j1939_sk_bind+0x223/0x5a0 net/can/j1939/socket.c:506
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff888113693d80 (size 192):
comm "syz.0.25", pid 6050, jiffies 4294942445
hex dump (first 32 bytes):
00 60 9d 2c 81 88 ff ff 00 60 9d 2c 81 88 ff ff .`.,.....`.,....
08 07 06 05 04 03 02 01 20 00 00 00 00 00 00 00 ........ .......
backtrace (crc 35e45c5a):
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]
j1939_ecu_create_locked+0x5c/0x200 net/can/j1939/bus.c:155
j1939_local_ecu_get+0x102/0x140 net/can/j1939/bus.c:293
j1939_sk_bind+0x38c/0x5a0 net/can/j1939/socket.c:529
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

BUG: memory leak
unreferenced object 0xffff88812c9d4000 (size 8192):
comm "syz.0.26", pid 6051, jiffies 4294942446
hex dump (first 32 bytes):
c0 e3 ed 12 81 88 ff ff c0 e3 ed 12 81 88 ff ff ................
00 00 00 00 00 00 00 00 00 80 77 2e 81 88 ff ff ..........w.....
backtrace (crc eb403d26):
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]
j1939_priv_create net/can/j1939/main.c:131 [inline]
j1939_netdev_start+0x168/0x710 net/can/j1939/main.c:268
j1939_sk_bind+0x223/0x5a0 net/can/j1939/socket.c:506
__sys_bind_socket net/socket.c:1920 [inline]
__sys_bind_socket net/socket.c:1912 [inline]
__sys_bind+0x131/0x160 net/socket.c:1951
__do_sys_bind net/socket.c:1956 [inline]
__se_sys_bind net/socket.c:1954 [inline]
__x64_sys_bind+0x1c/0x30 net/socket.c:1954
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xf8/0x610 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

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 syzkaller@xxxxxxxxxxxxxxxx.

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