syzbot


KASAN: use-after-free Read in tick_sched_handle (2)

Status: closed as invalid on 2018/02/14 13:55
Subsystems: kernel
[Documentation on labels]
Reported-by: syzbot+79129b830803bcb77c70@syzkaller.appspotmail.com
First crash: 2280d, last: 2280d
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KASAN: use-after-free Read in tick_sched_handle 1 2444d 2368d 0/26 closed as invalid on 2017/10/31 11:38
upstream KASAN: use-after-free Read in tick_sched_handle (3) kernel C done 12 1928d 1984d 13/26 fixed on 2019/11/09 22:22

Sample crash report:
==================================================================
BUG: KASAN: use-after-free in tick_sched_handle+0x149/0x160 kernel/time/tick-sched.c:153
Read of size 8 at addr ffff8801cae2fc60 by task syz-executor2/26843

CPU: 1 PID: 26843 Comm: syz-executor2 Not tainted 4.15.0-rc9+ #212
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x194/0x257 lib/dump_stack.c:53
 print_address_description+0x73/0x250 mm/kasan/report.c:252
 kasan_report_error mm/kasan/report.c:351 [inline]
 kasan_report+0x25b/0x340 mm/kasan/report.c:409
 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:430
 tick_sched_handle+0x149/0x160 kernel/time/tick-sched.c:153
 tick_sched_timer+0x42/0x120 kernel/time/tick-sched.c:1194
 __run_hrtimer kernel/time/hrtimer.c:1211 [inline]
 __hrtimer_run_queues+0x358/0xe20 kernel/time/hrtimer.c:1275
 hrtimer_interrupt+0x1c2/0x5e0 kernel/time/hrtimer.c:1309
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1025 [inline]
 smp_apic_timer_interrupt+0x14a/0x700 arch/x86/kernel/apic/apic.c:1050
 apic_timer_interrupt+0xa9/0xb0 arch/x86/entry/entry_64.S:937
 </IRQ>

Allocated by task 642:
(stack is not available)

Freed by task 21:
 save_stack+0x43/0xd0 mm/kasan/kasan.c:447
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_slab_free+0x71/0xc0 mm/kasan/kasan.c:524
 __cache_free mm/slab.c:3488 [inline]
 kfree+0xd6/0x260 mm/slab.c:3803
 call_usermodehelper_freeinfo kernel/umh.c:43 [inline]
 umh_complete+0x5c/0x90 kernel/umh.c:57
 call_usermodehelper_exec_sync kernel/umh.c:152 [inline]
 call_usermodehelper_exec_work+0x15a/0x2c0 kernel/umh.c:175
 process_one_work+0xbbf/0x1b10 kernel/workqueue.c:2113
 worker_thread+0x223/0x1990 kernel/workqueue.c:2247
 kthread+0x33c/0x400 kernel/kthread.c:238
 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:541

The buggy address belongs to the object at ffff8801cae2fc00
 which belongs to the cache kmalloc-128 of size 128
The buggy address is located 96 bytes inside of
 128-byte region [ffff8801cae2fc00, ffff8801cae2fc80)
The buggy address belongs to the page:
page:ffffea00072b8bc0 count:1 mapcount:0 mapping:ffff8801cae2f000 index:0x0
flags: 0x2fffc0000000100(slab)
raw: 02fffc0000000100 ffff8801cae2f000 0000000000000000 0000000100000015
raw: ffffea0006b168a0 ffffea0007638ba0 ffff8801dac00640 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8801cae2fb00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffff8801cae2fb80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>ffff8801cae2fc00: 00 00 00 00 00 00 00 00 00 00 fb fb fb fb fb fb
                                                       ^
 ffff8801cae2fc80: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb
 ffff8801cae2fd00: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/01/27 15:29 net-next-old 6bb46bc57c8e 1d18b112 .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.