============================= WARNING: suspicious RCU usage 4.17.0-rc1+ #16 Not tainted ----------------------------- net/ipv6/route.c:1550 suspicious rcu_dereference_protected() usage! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 4 locks held by syz-executor3/11363: #0: 00000000686a6b17 (rcu_read_lock_bh){....}, at: lwtunnel_xmit_redirect include/net/lwtunnel.h:92 [inline] #0: 00000000686a6b17 (rcu_read_lock_bh){....}, at: ip6_finish_output2+0x253/0x2800 net/ipv6/ip6_output.c:106 #1: 00000000686a6b17 (rcu_read_lock_bh){....}, at: __dev_queue_xmit+0x30f/0x34c0 net/core/dev.c:3519 #2: 00000000dc8ca1ca (_xmit_ETHER#2){+.-.}, at: spin_lock include/linux/spinlock.h:310 [inline] #2: 00000000dc8ca1ca (_xmit_ETHER#2){+.-.}, at: __netif_tx_lock include/linux/netdevice.h:3582 [inline] #2: 00000000dc8ca1ca (_xmit_ETHER#2){+.-.}, at: sch_direct_xmit+0x414/0x11e0 net/sched/sch_generic.c:325 #3: 0000000091f6c91b (rcu_read_lock){....}, at: ip6_link_failure+0xfe/0x790 net/ipv6/route.c:2227 stack backtrace: CPU: 0 PID: 11363 Comm: syz-executor3 Not tainted 4.17.0-rc1+ #16 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+0x1b9/0x294 lib/dump_stack.c:113 lockdep_rcu_suspicious+0x14a/0x153 kernel/locking/lockdep.c:4592 rt6_remove_exception_rt+0x416/0x4d0 net/ipv6/route.c:1549 ip6_link_failure+0x484/0x790 net/ipv6/route.c:2231 dst_link_failure include/net/dst.h:427 [inline] ip_tunnel_xmit+0x281b/0x3abc net/ipv4/ip_tunnel.c:784 __gre_xmit+0x5e1/0x980 net/ipv4/ip_gre.c:449 erspan_xmit+0x824/0x2520 net/ipv4/ip_gre.c:731 __netdev_start_xmit include/linux/netdevice.h:4087 [inline] netdev_start_xmit include/linux/netdevice.h:4096 [inline] xmit_one net/core/dev.c:3054 [inline] dev_hard_start_xmit+0x264/0xc10 net/core/dev.c:3070 sch_direct_xmit+0x4de/0x11e0 net/sched/sch_generic.c:327 qdisc_restart net/sched/sch_generic.c:399 [inline] __qdisc_run+0x741/0x1af0 net/sched/sch_generic.c:410 __dev_xmit_skb net/core/dev.c:3245 [inline] __dev_queue_xmit+0x28ea/0x34c0 net/core/dev.c:3553 dev_queue_xmit+0x17/0x20 net/core/dev.c:3618 neigh_resolve_output+0x679/0xad0 net/core/neighbour.c:1358 neigh_output include/net/neighbour.h:482 [inline] ip6_finish_output2+0xc93/0x2800 net/ipv6/ip6_output.c:120 ip6_finish_output+0x5fe/0xbc0 net/ipv6/ip6_output.c:154 NF_HOOK_COND include/linux/netfilter.h:277 [inline] ip6_output+0x227/0x9b0 net/ipv6/ip6_output.c:171 dst_output include/net/dst.h:444 [inline] NF_HOOK include/linux/netfilter.h:288 [inline] rawv6_send_hdrinc net/ipv6/raw.c:678 [inline] rawv6_sendmsg+0x2674/0x4590 net/ipv6/raw.c:924 inet_sendmsg+0x19f/0x690 net/ipv4/af_inet.c:798 sock_sendmsg_nosec net/socket.c:629 [inline] sock_sendmsg+0xd5/0x120 net/socket.c:639 ___sys_sendmsg+0x805/0x940 net/socket.c:2117 __sys_sendmsg+0x115/0x270 net/socket.c:2155 __do_sys_sendmsg net/socket.c:2164 [inline] __se_sys_sendmsg net/socket.c:2162 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2162 do_syscall_64+0x1b1/0x800 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x455389 RSP: 002b:00007fe11b6c6c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007fe11b6c76d4 RCX: 0000000000455389 RDX: 0000000000000000 RSI: 0000000020000040 RDI: 0000000000000013 RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 00000000000004f3 R14: 00000000006fa768 R15: 0000000000000000 bond0: enslaved VLAN challenged slave lo. Adding VLANs will be blocked as long as lo is part of bond bond0 bond0: lo ether type (772) is different from other slaves (1), can not enslave it bond0: enslaved VLAN challenged slave lo. Adding VLANs will be blocked as long as lo is part of bond bond0 bond0: lo ether type (772) is different from other slaves (1), can not enslave it bond0: enslaved VLAN challenged slave lo. Adding VLANs will be blocked as long as lo is part of bond bond0 bond0: lo ether type (772) is different from other slaves (1), can not enslave it netlink: 'syz-executor7': attribute type 21 has an invalid length. bond0: enslaved VLAN challenged slave lo. Adding VLANs will be blocked as long as lo is part of bond bond0 bond0: lo ether type (772) is different from other slaves (1), can not enslave it netlink: 'syz-executor7': attribute type 21 has an invalid length. netlink: 'syz-executor7': attribute type 21 has an invalid length. netlink: 'syz-executor7': attribute type 21 has an invalid length. bond0: enslaved VLAN challenged slave lo. Adding VLANs will be blocked as long as lo is part of bond bond0 bond0: lo ether type (772) is different from other slaves (1), can not enslave it IPVS: ftp: loaded support on port[0] = 21 netlink: 'syz-executor2': attribute type 1 has an invalid length. netlink: 4 bytes leftover after parsing attributes in process `syz-executor2'. device lo entered promiscuous mode IPVS: You probably need to specify IP address on multicast interface. IPVS: sync thread started: state = MASTER, mcast_ifn = lo, syncid = 0, id = 0 IPVS: stopping master sync thread 11793 ... bridge0: port 3(erspan0) entered blocking state bridge0: port 3(erspan0) entered disabled state device erspan0 entered promiscuous mode bridge0: port 3(erspan0) entered blocking state bridge0: port 3(erspan0) entered forwarding state IPVS: Unknown mcast interface: ,o bond0 (unregistering): Releasing backup interface bond_slave_0 bond0 (unregistering): Releasing backup interface bond_slave_1 bond0 (unregistering): Released all slaves IPVS: ftp: loaded support on port[0] = 21 netlink: 20 bytes leftover after parsing attributes in process `syz-executor6'.