syzbot


WARNING: suspicious RCU usage in io_init_identity

Status: fixed on 2020/11/16 12:12
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+4596e1fcf98efa7d1745@syzkaller.appspotmail.com
Fix commit: 1e6fa5216a0e io_uring: COW io_identity on mismatch
First crash: 1286d, last: 1281d
Discussions (1)
Title Replies (including bot) Last reply
WARNING: suspicious RCU usage in io_init_identity 3 (4) 2020/10/21 10:02

Sample crash report:
=============================
WARNING: suspicious RCU usage
5.9.0-next-20201016-syzkaller #0 Not tainted
-----------------------------
include/linux/cgroup.h:494 suspicious rcu_dereference_check() usage!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
no locks held by syz-executor.2/8276.

stack backtrace:
CPU: 1 PID: 8276 Comm: syz-executor.2 Not tainted 5.9.0-next-20201016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x198/0x1fb lib/dump_stack.c:118
 task_css include/linux/cgroup.h:494 [inline]
 blkcg_css include/linux/blk-cgroup.h:224 [inline]
 blkcg_css include/linux/blk-cgroup.h:217 [inline]
 io_init_identity+0x3a9/0x450 fs/io_uring.c:1052
 io_uring_alloc_task_context+0x176/0x250 fs/io_uring.c:7730
 io_sq_offload_create fs/io_uring.c:7801 [inline]
 io_uring_create fs/io_uring.c:9269 [inline]
 io_uring_setup+0x264a/0x3660 fs/io_uring.c:9342
 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x45de59
Code: 0d b4 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 db b3 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007fc1f2683bf8 EFLAGS: 00000206 ORIG_RAX: 00000000000001a9
RAX: ffffffffffffffda RBX: 0000000020000040 RCX: 000000000045de59
RDX: 0000000020ffd000 RSI: 0000000020000040 RDI: 0000000000003f7d
RBP: 000000000118bf78 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000206 R12: 0000000020ffd000
R13: 0000000020ffd000 R14: 0000000000000000 R15: 0000000000000000
BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.2/8276
caller is lockdep_hardirqs_on_prepare+0x5e/0x450 kernel/locking/lockdep.c:4060
CPU: 1 PID: 8276 Comm: syz-executor.2 Not tainted 5.9.0-next-20201016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x198/0x1fb lib/dump_stack.c:118
 check_preemption_disabled+0x128/0x130 lib/smp_processor_id.c:48
 lockdep_hardirqs_on_prepare+0x5e/0x450 kernel/locking/lockdep.c:4060
 trace_hardirqs_on+0x5b/0x1c0 kernel/trace/trace_preemptirq.c:49
 __bad_area_nosemaphore+0xc6/0x4f0 arch/x86/mm/fault.c:797
 do_user_addr_fault+0x852/0xbf0 arch/x86/mm/fault.c:1335
 handle_page_fault arch/x86/mm/fault.c:1429 [inline]
 exc_page_fault+0xa8/0x190 arch/x86/mm/fault.c:1482
 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:583
RIP: 0033:0x4024cb
Code: 40 41 89 e8 4c 89 ef b9 11 80 00 00 c1 e6 04 03 73 64 8d 14 90 39 f2 48 0f 43 f2 45 31 c9 ba 03 00 00 00 e8 a7 b9 05 00 8b 33 <49> 89 07 41 89 e8 4c 89 e7 41 b9 00 00 00 10 b9 11 80 00 00 ba 03
RSP: 002b:00007fc1f2683c00 EFLAGS: 00010207
RAX: 0000000020ffd000 RBX: 0000000020000040 RCX: 000000000045deaa
RDX: 0000000000000003 RSI: 0000000000004000 RDI: 0000000020ffd000
RBP: 0000000000000003 R08: 0000000000000003 R09: 0000000000000000
R10: 0000000000008011 R11: 0000000000000206 R12: 0000000020ffd000
R13: 0000000020ffd000 R14: 0000000000000000 R15: 0000000000000000
BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.2/8276
caller is lockdep_hardirqs_on+0x34/0x110 kernel/locking/lockdep.c:4129
CPU: 1 PID: 8276 Comm: syz-executor.2 Not tainted 5.9.0-next-20201016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x198/0x1fb lib/dump_stack.c:118
 check_preemption_disabled+0x128/0x130 lib/smp_processor_id.c:48
 lockdep_hardirqs_on+0x34/0x110 kernel/locking/lockdep.c:4129
 __bad_area_nosemaphore+0xc6/0x4f0 arch/x86/mm/fault.c:797
 do_user_addr_fault+0x852/0xbf0 arch/x86/mm/fault.c:1335
 handle_page_fault arch/x86/mm/fault.c:1429 [inline]
 exc_page_fault+0xa8/0x190 arch/x86/mm/fault.c:1482
 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:583
RIP: 0033:0x4024cb
Code: 40 41 89 e8 4c 89 ef b9 11 80 00 00 c1 e6 04 03 73 64 8d 14 90 39 f2 48 0f 43 f2 45 31 c9 ba 03 00 00 00 e8 a7 b9 05 00 8b 33 <49> 89 07 41 89 e8 4c 89 e7 41 b9 00 00 00 10 b9 11 80 00 00 ba 03
RSP: 002b:00007fc1f2683c00 EFLAGS: 00010207
RAX: 0000000020ffd000 RBX: 0000000020000040 RCX: 000000000045deaa
RDX: 0000000000000003 RSI: 0000000000004000 RDI: 0000000020ffd000
RBP: 0000000000000003 R08: 0000000000000003 R09: 0000000000000000
R10: 0000000000008011 R11: 0000000000000206 R12: 0000000020ffd000
R13: 0000000020ffd000 R14: 0000000000000000 R15: 0000000000000000
BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.2/8276
caller is lockdep_hardirqs_on_prepare+0x5e/0x450 kernel/locking/lockdep.c:4060
CPU: 1 PID: 8276 Comm: syz-executor.2 Not tainted 5.9.0-next-20201016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x198/0x1fb lib/dump_stack.c:118
 check_preemption_disabled+0x128/0x130 lib/smp_processor_id.c:48
 lockdep_hardirqs_on_prepare+0x5e/0x450 kernel/locking/lockdep.c:4060
 trace_hardirqs_on+0x5b/0x1c0 kernel/trace/trace_preemptirq.c:49
 __bad_area_nosemaphore+0xc6/0x4f0 arch/x86/mm/fault.c:797
 do_user_addr_fault+0x852/0xbf0 arch/x86/mm/fault.c:1335
 handle_page_fault arch/x86/mm/fault.c:1429 [inline]
 exc_page_fault+0xa8/0x190 arch/x86/mm/fault.c:1482
 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:583
RIP: 0033:0x4024cb
Code: 40 41 89 e8 4c 89 ef b9 11 80 00 00 c1 e6 04 03 73 64 8d 14 90 39 f2 48 0f 43 f2 45 31 c9 ba 03 00 00 00 e8 a7 b9 05 00 8b 33 <49> 89 07 41 89 e8 4c 89 e7 41 b9 00 00 00 10 b9 11 80 00 00 ba 03
RSP: 002b:00007fc1f2683c00 EFLAGS: 00010207
RAX: 0000000020ffd000 RBX: 0000000020000040 RCX: 000000000045deaa
RDX: 0000000000000003 RSI: 0000000000004000 RDI: 0000000020ffd000
RBP: 0000000000000003 R08: 0000000000000003 R09: 0000000000000000
R10: 0000000000008011 R11: 0000000000000206 R12: 0000000020ffd000
R13: 0000000020ffd000 R14: 0000000000000000 R15: 0000000000000000
BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.2/8276
caller is lockdep_hardirqs_on+0x34/0x110 kernel/locking/lockdep.c:4129
CPU: 1 PID: 8276 Comm: syz-executor.2 Not tainted 5.9.0-next-20201016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x198/0x1fb lib/dump_stack.c:118
 check_preemption_disabled+0x128/0x130 lib/smp_processor_id.c:48
 lockdep_hardirqs_on+0x34/0x110 kernel/locking/lockdep.c:4129
 __bad_area_nosemaphore+0xc6/0x4f0 arch/x86/mm/fault.c:797
 do_user_addr_fault+0x852/0xbf0 arch/x86/mm/fault.c:1335
 handle_page_fault arch/x86/mm/fault.c:1429 [inline]
 exc_page_fault+0xa8/0x190 arch/x86/mm/fault.c:1482
 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:583
RIP: 0033:0x4024cb
Code: 40 41 89 e8 4c 89 ef b9 11 80 00 00 c1 e6 04 03 73 64 8d 14 90 39 f2 48 0f 43 f2 45 31 c9 ba 03 00 00 00 e8 a7 b9 05 00 8b 33 <49> 89 07 41 89 e8 4c 89 e7 41 b9 00 00 00 10 b9 11 80 00 00 ba 03
RSP: 002b:00007fc1f2683c00 EFLAGS: 00010207
RAX: 0000000020ffd000 RBX: 0000000020000040 RCX: 000000000045deaa
RDX: 0000000000000003 RSI: 0000000000004000 RDI: 0000000020ffd000
RBP: 0000000000000003 R08: 0000000000000003 R09: 0000000000000000
R10: 0000000000008011 R11: 0000000000000206 R12: 0000000020ffd000
R13: 0000000020ffd000 R14: 0000000000000000 R15: 0000000000000000

Crashes (1536):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/10/21 03:35 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/21 03:30 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/21 02:28 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/21 00:55 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/21 00:08 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 23:08 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 22:00 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 21:34 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 20:33 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 20:28 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 19:26 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 19:23 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 18:19 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 17:55 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 16:50 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 16:32 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 15:29 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 15:04 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 14:02 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 13:23 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 12:22 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 11:28 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 10:43 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 10:11 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 09:31 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 09:31 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 08:23 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 08:21 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 07:12 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 06:20 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 05:35 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 04:32 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 03:20 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 03:14 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 02:13 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/20 01:08 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/19 23:54 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/19 23:53 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/19 22:48 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/19 22:41 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/19 21:32 linux-next b2926c108f9f ff4a3345 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/16 08:10 linux-next b2926c108f9f 6e262c73 .config console log report info ci-upstream-linux-next-kasan-gce-root
2020/10/16 06:29 linux-next b2926c108f9f 6e262c73 .config console log report info ci-upstream-linux-next-kasan-gce-root
* Struck through repros no longer work on HEAD.