syzbot


KASAN: invalid-free in putname

Status: auto-closed as invalid on 2019/02/22 10:29
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+021e1d2ae5a6560008eb@syzkaller.appspotmail.com
First crash: 2220d, last: 2220d

Sample crash report:
==================================================================
BUG: KASAN: double-free or invalid-free in putname+0xee/0x130 fs/namei.c:258

CPU: 0 PID: 18562 Comm: kworker/u4:6 Not tainted 4.16.0-rc6+ #285
TCP: request_sock_TCPv6: Possible SYN flooding on port 2. Sending cookies.  Check SNMP counters.
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x194/0x24d lib/dump_stack.c:53
 print_address_description+0x73/0x250 mm/kasan/report.c:256
 kasan_report_invalid_free+0x55/0x80 mm/kasan/report.c:336
 __kasan_slab_free+0x145/0x170 mm/kasan/kasan.c:500
 kasan_slab_free+0xe/0x10 mm/kasan/kasan.c:527
 __cache_free mm/slab.c:3485 [inline]
 kmem_cache_free+0x83/0x2a0 mm/slab.c:3743
 putname+0xee/0x130 fs/namei.c:258
 open_exec+0x41/0x60 fs/exec.c:882
 load_elf_binary+0x1348/0x4c10 fs/binfmt_elf.c:775
 search_binary_handler+0x142/0x6b0 fs/exec.c:1638
 exec_binprm fs/exec.c:1680 [inline]
 do_execveat_common.isra.30+0x1754/0x23c0 fs/exec.c:1802
 do_execve+0x31/0x40 fs/exec.c:1847
 call_usermodehelper_exec_async+0x457/0x8f0 kernel/umh.c:100
 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:406

Allocated by task 18549:
 save_stack+0x43/0xd0 mm/kasan/kasan.c:447
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:552
 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:489
 kmem_cache_alloc+0x12e/0x760 mm/slab.c:3541
 getname_flags+0xcb/0x580 fs/namei.c:138
 user_path_at_empty+0x2d/0x50 fs/namei.c:2569
 user_path_at include/linux/namei.h:57 [inline]
 SYSC_faccessat fs/open.c:384 [inline]
 SyS_faccessat fs/open.c:353 [inline]
 SYSC_access fs/open.c:431 [inline]
 SyS_access+0x22c/0x6a0 fs/open.c:429
 do_syscall_64+0x281/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7

Freed by task 18549:
 save_stack+0x43/0xd0 mm/kasan/kasan.c:447
 set_track mm/kasan/kasan.c:459 [inline]
 __kasan_slab_free+0x11a/0x170 mm/kasan/kasan.c:520
 kasan_slab_free+0xe/0x10 mm/kasan/kasan.c:527
 __cache_free mm/slab.c:3485 [inline]
 kmem_cache_free+0x83/0x2a0 mm/slab.c:3743
 putname+0xee/0x130 fs/namei.c:258
 filename_lookup+0x315/0x500 fs/namei.c:2324
 user_path_at_empty+0x40/0x50 fs/namei.c:2569
 user_path_at include/linux/namei.h:57 [inline]
 SYSC_faccessat fs/open.c:384 [inline]
 SyS_faccessat fs/open.c:353 [inline]
 SYSC_access fs/open.c:431 [inline]
 SyS_access+0x22c/0x6a0 fs/open.c:429
 do_syscall_64+0x281/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7

The buggy address belongs to the object at ffff8801b1caadc0
 which belongs to the cache names_cache of size 4096
The buggy address is located 1472 bytes to the left of
 4096-byte region [ffff8801b1caadc0, ffff8801b1cabdc0)
The buggy address belongs to the page:
page:ffffea0006c72a80 count:1 mapcount:0 mapping:ffff8801b1caadc0 index:0x0 compound_mapcount: 0
flags: 0x2fffc0000008100(slab|head)
raw: 02fffc0000008100 ffff8801b1caadc0 0000000000000000 0000000100000001
raw: ffffea00072096a0 ffffea0006bc5720 ffff8801da5da600 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8801b1caa700: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff8801b1caa780: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff8801b1caa800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                   ^
 ffff8801b1caa880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffff8801b1caa900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/03/29 16:18 net-next-old 56455e0998dd d47f0ed6 .config console log report ci-upstream-net-kasan-gce
2018/03/29 10:51 net-next-old 5d22d47b9ed9 d47f0ed6 .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.