syzbot


WARNING: suspicious RCU usage in should_fail

Status: closed as invalid on 2018/02/12 10:57
Subsystems: rds
[Documentation on labels]
First crash: 2544d, last: 2542d
Similar bugs (7)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream WARNING: suspicious RCU usage in should_fail (7) mm 1 2535d 2535d 0/28 closed as invalid on 2018/02/19 12:58
upstream WARNING: suspicious RCU usage in should_fail (2) mm 1 2542d 2542d 0/28 closed as invalid on 2018/02/12 11:24
upstream WARNING: suspicious RCU usage in should_fail (4) rds 1 2539d 2539d 0/28 closed as invalid on 2018/02/15 08:58
upstream WARNING: suspicious RCU usage in should_fail (8) net 1 2471d 2471d 0/28 closed as invalid on 2018/04/24 13:49
upstream WARNING: suspicious RCU usage in should_fail (6) rds 1 2537d 2537d 0/28 closed as invalid on 2018/02/17 12:58
upstream WARNING: suspicious RCU usage in should_fail (3) mm 1 2542d 2542d 0/28 closed as invalid on 2018/02/12 19:58
upstream WARNING: suspicious RCU usage in should_fail (5) mm 1 2537d 2537d 0/28 closed as invalid on 2018/02/17 10:58

Sample crash report:
R13: 000000000000060f R14: 00000000006f9208 R15: 0000000000000000

=============================
WARNING: suspicious RCU usage
FAULT_INJECTION: forcing a failure.
name failslab, interval 1, probability 0, space 0, times 1
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 syz-executor0/8668:
 #0:  (rcu_read_lock){....}, at: [<00000000ca3340a3>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218

stack backtrace:
CPU: 0 PID: 8675 Comm: syz-executor6 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
 fail_dump lib/fault-inject.c:51 [inline]
 should_fail+0x8c0/0xa40 lib/fault-inject.c:149
 should_failslab+0xec/0x120 mm/failslab.c:32
 slab_pre_alloc_hook mm/slab.h:422 [inline]
 slab_alloc mm/slab.c:3365 [inline]
 kmem_cache_alloc+0x47/0x760 mm/slab.c:3539
 __build_skb+0x9d/0x450 net/core/skbuff.c:281
 build_skb+0x6f/0x2a0 net/core/skbuff.c:312
 tun_build_skb.isra.50+0x9cb/0x1850 drivers/net/tun.c:1692
 tun_get_user+0x17d0/0x3940 drivers/net/tun.c:1802
 tun_chr_write_iter+0xbd/0x1c0 drivers/net/tun.c:1988
 call_write_iter include/linux/fs.h:1781 [inline]
 do_iter_readv_writev+0x55c/0x830 fs/read_write.c:653
 do_iter_write+0x154/0x540 fs/read_write.c:932
 vfs_writev+0x18a/0x340 fs/read_write.c:977
 do_writev+0xfc/0x2a0 fs/read_write.c:1012
 SYSC_writev fs/read_write.c:1085 [inline]
 SyS_writev+0x27/0x30 fs/read_write.c:1082
 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x26/0x9b
RIP: 0033:0x453931
RSP: 002b:00007f9f75ec0ba0 EFLAGS: 00000293 ORIG_RAX: 0000000000000014
RAX: ffffffffffffffda RBX: 0000000000000046 RCX: 0000000000453931
RDX: 0000000000000001 RSI: 00007f9f75ec0bf0 RDI: 0000000000000012
RBP: 000000002003e000 R08: 0000000000000012 R09: 0000000000000000
R10: 0000000000000046 R11: 0000000000000293 R12: 0000000000000013
R13: 000000000000060f R14: 00000000006f9208 R15: 0000000000000001
CPU: 1 PID: 8668 Comm: syz-executor0 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_trace+0x299/0x740 mm/slab.c:3605
 kmalloc include/linux/slab.h:512 [inline]
 kzalloc include/linux/slab.h:701 [inline]
 rds_loop_conn_alloc+0xc8/0x380 net/rds/loop.c:126
 __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:0x453a59
RSP: 002b:00007fb28b402c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 00007fb28b4036d4 RCX: 0000000000453a59
RDX: 0000000000000000 RSI: 0000000020007000 RDI: 0000000000000013
RBP: 000000000071bea0 R08: 0000000020000000 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000004b9 R14: 00000000006f71f8 R15: 0000000000000000
BUG: sleeping function called from invalid context at mm/slab.h:420
in_atomic(): 1, irqs_disabled(): 0, pid: 8668, name: syz-executor0
1 lock held by syz-executor0/8668:
 #0:  (rcu_read_lock){....}, at: [<00000000ca3340a3>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218
CPU: 1 PID: 8668 Comm: syz-executor0 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_trace+0x299/0x740 mm/slab.c:3605
 kmalloc include/linux/slab.h:512 [inline]
 kzalloc include/linux/slab.h:701 [inline]
 rds_loop_conn_alloc+0xc8/0x380 net/rds/loop.c:126
 __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:0x453a59
RSP: 002b:00007fb28b402c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 00007fb28b4036d4 RCX: 0000000000453a59
RDX: 0000000000000000 RSI: 0000000020007000 RDI: 0000000000000013
RBP: 000000000071bea0 R08: 0000000020000000 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000004b9 R14: 00000000006f71f8 R15: 0000000000000000
dccp_invalid_packet: P.Data Offset(2) too small
dccp_invalid_packet: P.Data Offset(2) too small
netlink: 'syz-executor2': attribute type 1 has an invalid length.
audit: type=1400 audit(1518418249.037:66): avc:  denied  { getopt } for  pid=8793 comm="syz-executor2" scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=netlink_netfilter_socket permissive=1
netlink: 'syz-executor2': attribute type 1 has an invalid length.

Crashes (8):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/02/12 06:50 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/12 00:46 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/11 12:29 upstream d48fcbd864a0 4e9b726d .config console log report ci-upstream-kasan-gce
2018/02/10 22:24 upstream 9a61df9e5f74 e67d44e0 .config console log report ci-upstream-kasan-gce
2018/02/12 03:13 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce-386
2018/02/12 00:47 upstream 7928b2cbe55b 4e9b726d .config console log report ci-upstream-kasan-gce-386
2018/02/12 05:16 net-next-old 9a61df9e5f74 4e9b726d .config console log report ci-upstream-net-kasan-gce
2018/02/10 20:05 net-next-old 9a61df9e5f74 e67d44e0 .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.