syzbot


WARNING: suspicious RCU usage in should_fail (7)

Status: closed as invalid on 2018/02/19 12:58
Subsystems: mm
[Documentation on labels]
First crash: 2703d, last: 2703d
Similar bugs (7)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream WARNING: suspicious RCU usage in should_fail (2) mm 4 1 2710d 2710d 0/29 closed as invalid on 2018/02/12 11:24
upstream WARNING: suspicious RCU usage in should_fail (4) rds 4 1 2707d 2707d 0/29 closed as invalid on 2018/02/15 08:58
upstream WARNING: suspicious RCU usage in should_fail (8) net 4 1 2639d 2639d 0/29 closed as invalid on 2018/04/24 13:49
upstream WARNING: suspicious RCU usage in should_fail rds 4 8 2710d 2711d 0/29 closed as invalid on 2018/02/12 10:57
upstream WARNING: suspicious RCU usage in should_fail (6) rds 4 1 2705d 2705d 0/29 closed as invalid on 2018/02/17 12:58
upstream WARNING: suspicious RCU usage in should_fail (3) mm 4 1 2709d 2709d 0/29 closed as invalid on 2018/02/12 19:58
upstream WARNING: suspicious RCU usage in should_fail (5) mm 4 1 2705d 2705d 0/29 closed as invalid on 2018/02/17 10:58

Sample crash report:
FAULT_INJECTION: forcing a failure.
name failslab, interval 1, probability 0, space 0, times 0
=============================
CPU: 1 PID: 16163 Comm: syz-executor6 Not tainted 4.16.0-rc2+ #320
WARNING: suspicious RCU usage
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
4.16.0-rc2+ #320 Not tainted
 fail_dump lib/fault-inject.c:51 [inline]
 should_fail+0x8c0/0xa40 lib/fault-inject.c:149
-----------------------------
./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-executor7/16159:
 #0: 
 (
 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_trace+0x4b/0x740 mm/slab.c:3605
rcu_read_lock
 kmalloc include/linux/slab.h:512 [inline]
 kzalloc include/linux/slab.h:701 [inline]
 __reuseport_alloc net/core/sock_reuseport.c:21 [inline]
 reuseport_alloc+0x163/0x390 net/core/sock_reuseport.c:48
){....}
, at: [<000000000c3488ed>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218

stack backtrace:
 inet_reuseport_add_sock net/ipv4/inet_hashtables.c:573 [inline]
 __inet_hash+0xaf8/0x10d0 net/ipv4/inet_hashtables.c:591
 inet6_hash+0x61/0x90 net/ipv6/inet6_hashtables.c:336
 inet_csk_listen_start+0x258/0x310 net/ipv4/inet_connection_sock.c:884
 inet_listen+0x19a/0x440 net/ipv4/af_inet.c:229
 SYSC_listen net/socket.c:1503 [inline]
 SyS_listen+0x1aa/0x350 net/socket.c:1489
 do_syscall_64+0x280/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x453d69
RSP: 002b:00007fb3a3992c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000032
RAX: ffffffffffffffda RBX: 00007fb3a39936d4 RCX: 0000000000453d69
RDX: 0000000000000000 RSI: 0000000080000000 RDI: 0000000000000013
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000014
R13: 00000000000003c2 R14: 00000000006f5ad0 R15: 0000000000000001
CPU: 0 PID: 16159 Comm: syz-executor7 Not tainted 4.16.0-rc2+ #320
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:6098
 __might_sleep+0x95/0x190 kernel/sched/core.c:6086
 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
 ___sys_sendmsg+0x767/0x8b0 net/socket.c:2046
 __sys_sendmsg+0xe5/0x210 net/socket.c:2080
 SYSC_sendmsg net/socket.c:2091 [inline]
 SyS_sendmsg+0x2d/0x50 net/socket.c:2087
 do_syscall_64+0x280/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x453d69
RSP: 002b:00007f51b1b09c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007f51b1b0a6d4 RCX: 0000000000453d69
RDX: 0000000000000000 RSI: 000000002000dfc8 RDI: 0000000000000013
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000004b5 R14: 00000000006f7198 R15: 0000000000000000
BUG: sleeping function called from invalid context at mm/slab.h:420
in_atomic(): 1, irqs_disabled(): 0, pid: 16159, name: syz-executor7
1 lock held by syz-executor7/16159:
 #0:  (rcu_read_lock){....}, at: [<000000000c3488ed>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218
CPU: 0 PID: 16159 Comm: syz-executor7 Not tainted 4.16.0-rc2+ #320
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:6133
 __might_sleep+0x95/0x190 kernel/sched/core.c:6086
 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
 ___sys_sendmsg+0x767/0x8b0 net/socket.c:2046
 __sys_sendmsg+0xe5/0x210 net/socket.c:2080
 SYSC_sendmsg net/socket.c:2091 [inline]
 SyS_sendmsg+0x2d/0x50 net/socket.c:2087
 do_syscall_64+0x280/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x453d69
RSP: 002b:00007f51b1b09c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007f51b1b0a6d4 RCX: 0000000000453d69
RDX: 0000000000000000 RSI: 000000002000dfc8 RDI: 0000000000000013
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000004b5 R14: 00000000006f7198 R15: 0000000000000000
DNAT: multiple ranges no longer supported
DNAT: multiple ranges no longer supported
QAT: Invalid ioctl
QAT: Invalid ioctl
QAT: Invalid ioctl
QAT: Invalid ioctl
FAULT_INJECTION: forcing a failure.
name failslab, interval 1, probability 0, space 0, times 0
CPU: 1 PID: 16617 Comm: syz-executor0 Tainted: G        W        4.16.0-rc2+ #320
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
 dst_alloc+0x11f/0x1a0 net/core/dst.c:104
 rt_dst_alloc+0xe9/0x520 net/ipv4/route.c:1497
 __mkroute_output net/ipv4/route.c:2239 [inline]
 ip_route_output_key_hash_rcu+0xa59/0x2f00 net/ipv4/route.c:2467
 ip_route_output_key_hash+0x20b/0x370 net/ipv4/route.c:2296
 __ip_route_output_key include/net/route.h:125 [inline]
 __xfrm4_dst_lookup.isra.5+0x27b/0x390 net/ipv4/xfrm4_policy.c:39
 xfrm4_get_saddr+0xab/0x160 net/ipv4/xfrm4_policy.c:63
 xfrm_get_saddr net/xfrm/xfrm_policy.c:1355 [inline]
 xfrm_tmpl_resolve_one net/xfrm/xfrm_policy.c:1384 [inline]
 xfrm_tmpl_resolve+0x57b/0xc40 net/xfrm/xfrm_policy.c:1437
 xfrm_resolve_and_create_bundle+0x184/0x28d0 net/xfrm/xfrm_policy.c:1830
 xfrm_lookup+0xfcb/0x25c0 net/xfrm/xfrm_policy.c:2160
 xfrm_lookup_route+0x39/0x1a0 net/xfrm/xfrm_policy.c:2280
 ip6_dst_lookup_flow+0x1c2/0x270 net/ipv6/ip6_output.c:1099
 ip6_datagram_dst_update+0x734/0x1480 net/ipv6/datagram.c:91
 __ip6_datagram_connect+0x533/0x12d0 net/ipv6/datagram.c:251
 ip6_datagram_connect+0x2f/0x50 net/ipv6/datagram.c:273
 ip6_datagram_connect_v6_only+0x5e/0x80 net/ipv6/datagram.c:285
 inet_dgram_connect+0x16b/0x1f0 net/ipv4/af_inet.c:542
 SYSC_connect+0x213/0x4a0 net/socket.c:1639
 SyS_connect+0x24/0x30 net/socket.c:1620
 do_syscall_64+0x280/0x940 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x453d69
RSP: 002b:00007f1b05009c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002a
RAX: ffffffffffffffda RBX: 00007f1b0500a6d4 RCX: 0000000000453d69
RDX: 000000000000001c RSI: 0000000020cc2000 RDI: 0000000000000013
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000015
R13: 000000000000005a R14: 00000000006f0910 R15: 0000000000000000
audit: type=1400 audit(1519039592.825:66): avc:  denied  { map } for  pid=16923 comm="syz-executor2" path="/dev/cuse" dev="devtmpfs" ino=152 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=system_u:object_r:tty_device_t:s0 tclass=chr_file permissive=1
audit: type=1400 audit(1519039593.928:67): avc:  denied  { create } for  pid=17192 comm="syz-executor4" scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=netlink_connector_socket permissive=1

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/02/19 11:26 upstream 91ab883eb213 833f78c7 .config console log report ci-upstream-kasan-gce
* Struck through repros no longer work on HEAD.