memory leak in gfs2_init_fs_context

From: syzbot
Date: Wed Oct 02 2019 - 20:19:10 EST


Hello,

syzbot found the following crash on:

HEAD commit: f1f2f614 Merge branch 'next-integrity' of git://git.kernel..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=15569c05600000
kernel config: https://syzkaller.appspot.com/x/.config?x=4e93436f92b0cfde
dashboard link: https://syzkaller.appspot.com/bug?extid=c2fdfd2b783754878fb6
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=10327c05600000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=105c9fd5600000

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

udit: type=1400 audit(1569701659.045:64): avc: denied { map } for pid=6842 comm="syz-executor375" path="/root/syz-executor375626622" dev="sda1" ino=16502 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=1
executing program
executing program
BUG: memory leak
unreferenced object 0xffff88810fd9a500 (size 256):
comm "syz-executor375", pid 6845, jiffies 4294941255 (age 13.550s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 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:
[<00000000462ab467>] kmemleak_alloc_recursive include/linux/kmemleak.h:43 [inline]
[<00000000462ab467>] slab_post_alloc_hook mm/slab.h:586 [inline]
[<00000000462ab467>] slab_alloc mm/slab.c:3319 [inline]
[<00000000462ab467>] kmem_cache_alloc_trace+0x145/0x2c0 mm/slab.c:3548
[<00000000b1a62211>] kmalloc include/linux/slab.h:552 [inline]
[<00000000b1a62211>] kzalloc include/linux/slab.h:686 [inline]
[<00000000b1a62211>] gfs2_init_fs_context+0x25/0x90 fs/gfs2/ops_fstype.c:1543
[<00000000db94ecb4>] gfs2_meta_init_fs_context+0x17/0x40 fs/gfs2/ops_fstype.c:1608
[<0000000077df5577>] alloc_fs_context+0x174/0x200 fs/fs_context.c:293
[<000000008d5e3681>] fs_context_for_mount+0x25/0x30 fs/fs_context.c:307
[<0000000030bafbdb>] __do_sys_fsopen fs/fsopen.c:137 [inline]
[<0000000030bafbdb>] __se_sys_fsopen fs/fsopen.c:115 [inline]
[<0000000030bafbdb>] __x64_sys_fsopen+0xa9/0x1a0 fs/fsopen.c:115
[<00000000974fed69>] do_syscall_64+0x73/0x1f0 arch/x86/entry/common.c:290
[<00000000299e0e1b>] entry_SYSCALL_64_after_hwframe+0x44/0xa9

BUG: memory leak
unreferenced object 0xffff88810fd9a200 (size 256):
comm "syz-executor375", pid 6846, jiffies 4294941838 (age 7.720s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 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:
[<00000000462ab467>] kmemleak_alloc_recursive include/linux/kmemleak.h:43 [inline]
[<00000000462ab467>] slab_post_alloc_hook mm/slab.h:586 [inline]
[<00000000462ab467>] slab_alloc mm/slab.c:3319 [inline]
[<00000000462ab467>] kmem_cache_alloc_trace+0x145/0x2c0 mm/slab.c:3548
[<00000000b1a62211>] kmalloc include/linux/slab.h:552 [inline]
[<00000000b1a62211>] kzalloc include/linux/slab.h:686 [inline]
[<00000000b1a62211>] gfs2_init_fs_context+0x25/0x90 fs/gfs2/ops_fstype.c:1543
[<00000000db94ecb4>] gfs2_meta_init_fs_context+0x17/0x40 fs/gfs2/ops_fstype.c:1608
[<0000000077df5577>] alloc_fs_context+0x174/0x200 fs/fs_context.c:293
[<000000008d5e3681>] fs_context_for_mount+0x25/0x30 fs/fs_context.c:307
[<0000000030bafbdb>] __do_sys_fsopen fs/fsopen.c:137 [inline]
[<0000000030bafbdb>] __se_sys_fsopen fs/fsopen.c:115 [inline]
[<0000000030bafbdb>] __x64_sys_fsopen+0xa9/0x1a0 fs/fsopen.c:115
[<00000000974fed69>] do_syscall_64+0x73/0x1f0 arch/x86/entry/common.c:290
[<00000000299e0e1b>] entry_SYSCALL_64_after_hwframe+0x44/0xa9



---
This bug 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@xxxxxxxxxxxxxxxxx

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
syzbot can test patches for this bug, for details see:
https://goo.gl/tpsmEJ#testing-patches