From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dmitry Vyukov Subject: Re: unregister_netdevice: waiting for DEV to become free (2) Date: Wed, 15 Aug 2018 13:41:42 -0700 Message-ID: References: <00000000000056268e05737dcb95@google.com> <000000000000c5b63005737f290d@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Cc: LKML , syzkaller-bugs , netdev , Dan Streetman To: syzbot Return-path: Received: from mail-pl0-f52.google.com ([209.85.160.52]:41820 "EHLO mail-pl0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726046AbeHOXfs (ORCPT ); Wed, 15 Aug 2018 19:35:48 -0400 Received: by mail-pl0-f52.google.com with SMTP id w19-v6so952461ply.8 for ; Wed, 15 Aug 2018 13:42:03 -0700 (PDT) In-Reply-To: <000000000000c5b63005737f290d@google.com> Sender: netdev-owner@vger.kernel.org List-ID: On Wed, Aug 15, 2018 at 1:28 PM, syzbot wrote: > syzbot has found a reproducer for the following crash on: > > HEAD commit: 31130a16d459 Merge tag 'for-linus-4.19-rc1-tag' of git://g.. > git tree: upstream > console output: https://syzkaller.appspot.com/x/log.txt?x=1116b46c400000 > kernel config: https://syzkaller.appspot.com/x/.config?x=e8d52931cda051de > dashboard link: https://syzkaller.appspot.com/bug?extid=30209ea299c09d8785c9 > compiler: gcc (GCC) 8.0.1 20180413 (experimental) > syzkaller repro:https://syzkaller.appspot.com/x/repro.syz?x=11617322400000 +netdev and Dan There were more reproducers here: https://groups.google.com/forum/#!msg/syzkaller/-06_laheMF0/MxCjIiHkBwAJ and here: https://groups.google.com/forum/#!msg/syzkaller/-06_laheMF0/4wfWs6ATBwAJ and in the previous incarnation of the bug: https://syzkaller.appspot.com/bug?id=1a97a5bd119fd97995f752819fd87840ab9479a9 > IMPORTANT: if you fix the bug, please add the following tag to the commit: > Reported-by: syzbot+30209ea299c09d8785c9@syzkaller.appspotmail.com > > IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered forwarding state > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered forwarding state > unregister_netdevice: waiting for lo to become free. Usage count = 1 > 8021q: adding VLAN 0 to HW filter on device bond0 > IPv6: ADDRCONF(NETDEV_UP): veth0: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1: link is not ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready > 8021q: adding VLAN 0 to HW filter on device team0 > IPVS: stopping master sync thread 6855 ... > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: stopping master sync thread 6859 ... > IPVS: ftp: loaded support on port[0] = 21 > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered disabled state > device bridge_slave_0 entered promiscuous mode > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered disabled state > device bridge_slave_1 entered promiscuous mode > IPv6: ADDRCONF(NETDEV_UP): veth0_to_bridge: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1_to_bridge: link is not ready > bond0: Enslaving bond_slave_0 as an active interface with an up link > bond0: Enslaving bond_slave_1 as an active interface with an up link > IPv6: ADDRCONF(NETDEV_UP): team_slave_0: link is not ready > team0: Port device team_slave_0 added > IPv6: ADDRCONF(NETDEV_UP): team_slave_1: link is not ready > team0: Port device team_slave_1 added > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered forwarding state > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered forwarding state > 8021q: adding VLAN 0 to HW filter on device bond0 > IPv6: ADDRCONF(NETDEV_UP): veth0: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1: link is not ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready > 8021q: adding VLAN 0 to HW filter on device team0 > IPVS: stopping master sync thread 7118 ... > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: stopping master sync thread 7122 ... > IPVS: ftp: loaded support on port[0] = 21 > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered disabled state > device bridge_slave_0 entered promiscuous mode > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered disabled state > device bridge_slave_1 entered promiscuous mode > IPv6: ADDRCONF(NETDEV_UP): veth0_to_bridge: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1_to_bridge: link is not ready > bond0: Enslaving bond_slave_0 as an active interface with an up link > bond0: Enslaving bond_slave_1 as an active interface with an up link > IPv6: ADDRCONF(NETDEV_UP): team_slave_0: link is not ready > team0: Port device team_slave_0 added > IPv6: ADDRCONF(NETDEV_UP): team_slave_1: link is not ready > team0: Port device team_slave_1 added > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered forwarding state > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered forwarding state > 8021q: adding VLAN 0 to HW filter on device bond0 > IPv6: ADDRCONF(NETDEV_UP): veth0: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1: link is not ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready > 8021q: adding VLAN 0 to HW filter on device team0 > IPVS: stopping master sync thread 7381 ... > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: stopping master sync thread 7385 ... > IPVS: ftp: loaded support on port[0] = 21 > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered disabled state > device bridge_slave_0 entered promiscuous mode > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered disabled state > device bridge_slave_1 entered promiscuous mode > IPv6: ADDRCONF(NETDEV_UP): veth0_to_bridge: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1_to_bridge: link is not ready > bond0: Enslaving bond_slave_0 as an active interface with an up link > bond0: Enslaving bond_slave_1 as an active interface with an up link > IPv6: ADDRCONF(NETDEV_UP): team_slave_0: link is not ready > team0: Port device team_slave_0 added > IPv6: ADDRCONF(NETDEV_UP): team_slave_1: link is not ready > team0: Port device team_slave_1 added > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered forwarding state > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered forwarding state > 8021q: adding VLAN 0 to HW filter on device bond0 > IPv6: ADDRCONF(NETDEV_UP): veth0: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1: link is not ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready > 8021q: adding VLAN 0 to HW filter on device team0 > IPVS: stopping master sync thread 7644 ... > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: sync thread started: state = MASTER, mcast_ifn = syz_tun, syncid = 0, > id = 0 > IPVS: stopping master sync thread 7648 ... > IPVS: ftp: loaded support on port[0] = 21 > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered disabled state > device bridge_slave_0 entered promiscuous mode > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered disabled state > device bridge_slave_1 entered promiscuous mode > IPv6: ADDRCONF(NETDEV_UP): veth0_to_bridge: link is not ready > IPv6: ADDRCONF(NETDEV_UP): veth1_to_bridge: link is not ready > bond0: Enslaving bond_slave_0 as an active interface with an up link > bond0: Enslaving bond_slave_1 as an active interface with an up link > IPv6: ADDRCONF(NETDEV_UP): team_slave_0: link is not ready > team0: Port device team_slave_0 added > IPv6: ADDRCONF(NETDEV_UP): team_slave_1: link is not ready > team0: Port device team_slave_1 added > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready > IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready > bridge0: port 2(bridge_slave_1) entered blocking state > bridge0: port 2(bridge_slave_1) entered forwarding state > bridge0: port 1(bridge_slave_0) entered blocking state > bridge0: port 1(bridge_slave_0) entered forwarding state > 8021q: adding VLAN 0 to HW filter on device bond0 > IPv6: ADDRCONF(NETDEV_UP): veth0: link is not ready > > -- > You received this message because you are subscribed to the Google Groups > "syzkaller-bugs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to syzkaller-bugs+unsubscribe@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/syzkaller-bugs/000000000000c5b63005737f290d%40google.com. > > For more options, visit https://groups.google.com/d/optout.