syzbot


WARNING: suspicious RCU usage in rds_tcp_conn_alloc

Status: closed as dup on 2018/02/12 16:15
Subsystems: rds
[Documentation on labels]
Reported-by: syzbot+a0564419941aaae3fe3c@syzkaller.appspotmail.com
Fix commit: d4014d8cc6df rds: do not call ->conn_alloc with GFP_KERNEL
First crash: 2272d, last: 2262d
Duplicate of
Title Repro Cause bisect Fix bisect Count Last Reported
WARNING: suspicious RCU usage in rds_loop_conn_alloc rds C 34303 2262d 2270d
Discussions (4)
Title Replies (including bot) Last reply
[PATCH V2 net-next] rds: do not call ->conn_alloc with GFP_KERNEL 3 (3) 2018/02/13 20:41
[PATCH v3 net-next] rds: do not call ->conn_alloc with GFP_KERNEL 1 (1) 2018/02/13 17:46
[PATCH net-next] rds: do not call ->conn_alloc with GFP_KERNEL 3 (3) 2018/02/13 17:07
WARNING: suspicious RCU usage in rds_tcp_conn_alloc 1 (2) 2018/02/12 16:15

Sample crash report:
=============================
WARNING: suspicious RCU usage
4.16.0-rc1+ #309 Not tainted
-----------------------------
./include/linux/rcupdate.h:302 Illegal context switch in RCU read-side critical section!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
1 lock held by syzkaller666532/4155:
 #0:  (rcu_read_lock){....}, at: [<000000004e6d2b6a>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218

stack backtrace:
CPU: 1 PID: 4155 Comm: syzkaller666532 Not tainted 4.16.0-rc1+ #309
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/0x257 lib/dump_stack.c:53
 lockdep_rcu_suspicious+0x123/0x170 kernel/locking/lockdep.c:4592
 rcu_preempt_sleep_check include/linux/rcupdate.h:301 [inline]
 ___might_sleep+0x385/0x470 kernel/sched/core.c:6093
 __might_sleep+0x95/0x190 kernel/sched/core.c:6081
 slab_pre_alloc_hook mm/slab.h:420 [inline]
 slab_alloc mm/slab.c:3365 [inline]
 kmem_cache_alloc+0x2a2/0x760 mm/slab.c:3539
 rds_tcp_conn_alloc+0xa7/0x4e0 net/rds/tcp.c:296
 __rds_conn_create+0x112f/0x1b50 net/rds/connection.c:227
 rds_conn_create_outgoing+0x3f/0x50 net/rds/connection.c:309
 rds_sendmsg+0xda3/0x2390 net/rds/send.c:1126
 sock_sendmsg_nosec net/socket.c:630 [inline]
 sock_sendmsg+0xca/0x110 net/socket.c:640
 SYSC_sendto+0x361/0x5c0 net/socket.c:1747
 SyS_sendto+0x40/0x50 net/socket.c:1715
 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x26/0x9b
RIP: 0033:0x444f09
RSP: 002b:00007ffe01ae99c8 EFLAGS: 00000202 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 00000000004a682b RCX: 0000000000444f09
RDX: 0000000000000000 RSI: 0000000020a3cfff RDI: 0000000000000004
RBP: 00007ffe01ae9a78 R08: 0000000020dfcff0 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000202 R12: 00007ffe01ae9a78
R13: 0000000000402490 R14: 0000000000000000 R15: 0000000000000000
BUG: sleeping function called from invalid context at mm/slab.h:420
in_atomic(): 1, irqs_disabled(): 0, pid: 4155, name: syzkaller666532
1 lock held by syzkaller666532/4155:
 #0:  (rcu_read_lock){....}, at: [<000000004e6d2b6a>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218
CPU: 1 PID: 4155 Comm: syzkaller666532 Not tainted 4.16.0-rc1+ #309
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/0x257 lib/dump_stack.c:53
 ___might_sleep+0x2b2/0x470 kernel/sched/core.c:6128
 __might_sleep+0x95/0x190 kernel/sched/core.c:6081
 slab_pre_alloc_hook mm/slab.h:420 [inline]
 slab_alloc mm/slab.c:3365 [inline]
 kmem_cache_alloc+0x2a2/0x760 mm/slab.c:3539
 rds_tcp_conn_alloc+0xa7/0x4e0 net/rds/tcp.c:296
 __rds_conn_create+0x112f/0x1b50 net/rds/connection.c:227
 rds_conn_create_outgoing+0x3f/0x50 net/rds/connection.c:309
 rds_sendmsg+0xda3/0x2390 net/rds/send.c:1126
 sock_sendmsg_nosec net/socket.c:630 [inline]
 sock_sendmsg+0xca/0x110 net/socket.c:640
 SYSC_sendto+0x361/0x5c0 net/socket.c:1747
 SyS_sendto+0x40/0x50 net/socket.c:1715
 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x26/0x9b
RIP: 0033:0x444f09
RSP: 002b:00007ffe01ae99c8 EFLAGS: 00000202 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 00000000004a682b RCX: 0000000000444f09
RDX: 0000000000000000 RSI: 0000000020a3cfff RDI: 0000000000000004
RBP: 00007ffe01ae9a78 R08: 0000000020dfcff0 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000202 R12: 00007ffe01ae9a78
R13: 0000000000402490 R14: 0000000000000000 R15: 0000000000000000

Crashes (6485):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/02/12 09:10 upstream 7928b2cbe55b 4e9b726d .config console log report syz C ci-upstream-kasan-gce
2018/02/11 23:12 upstream d48fcbd864a0 4e9b726d .config console log report syz C ci-upstream-kasan-gce
2018/02/11 22:27 upstream d48fcbd864a0 4e9b726d .config console log report syz C ci-upstream-kasan-gce
2018/02/11 13:02 upstream d48fcbd864a0 4e9b726d .config console log report syz C ci-upstream-kasan-gce
2018/02/12 05:53 upstream 7928b2cbe55b 4e9b726d .config console log report syz C ci-upstream-kasan-gce-386
2018/02/11 00:52 upstream d48fcbd864a0 4e9b726d .config console log report syz C ci-upstream-kasan-gce-386
2018/02/12 05:38 net-next-old 9a61df9e5f74 4e9b726d .config console log report syz C ci-upstream-net-kasan-gce
2018/02/12 00:15 net-next-old 9a61df9e5f74 4e9b726d .config console log report syz C ci-upstream-net-kasan-gce
2018/02/11 16:19 net-next-old 9a61df9e5f74 4e9b726d .config console log report syz C ci-upstream-net-kasan-gce
2018/02/11 15:30 net-next-old 9a61df9e5f74 4e9b726d .config console log report syz C ci-upstream-net-kasan-gce
2018/02/11 00:04 net-next-old 9a61df9e5f74 4e9b726d .config console log report syz C ci-upstream-net-kasan-gce
2018/02/20 03:14 upstream 91ab883eb213 c1f526e3 .config console log report ci-upstream-kasan-gce
2018/02/12 18:15 upstream 178e834c47b0 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 17:48 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 15:44 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 14:04 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 13:17 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 12:01 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 11:37 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 11:34 upstream 7928b2cbe55b 88bc17df .config console log report ci-upstream-kasan-gce
2018/02/12 07:39 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/12 02:24 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:56 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:35 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:17 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:15 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:14 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:11 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:09 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 23:07 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 22:38 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 21:40 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 21:35 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 21:24 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 21:11 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:56 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:53 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:36 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:13 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:11 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 20:07 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:53 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:51 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:41 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:32 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:32 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:23 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 19:22 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 18:55 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 17:29 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 17:03 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/10 23:24 net-next-old 9a61df9e5f74 4e9b726d .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.