device bridge_slave_1 left promiscuous mode bridge0: port 2(bridge_slave_1) entered disabled state bridge0: port 1(bridge_slave_0) entered disabled state device batadv0 left promiscuous mode ============================================ WARNING: possible recursive locking detected 4.19.211-syzkaller #0 Not tainted -------------------------------------------- kworker/u4:6/9944 is trying to acquire lock: 00000000ffd5b967 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: netif_addr_lock_nested include/linux/netdevice.h:4007 [inline] 00000000ffd5b967 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: dev_uc_sync_multiple+0x11a/0x1e0 net/core/dev_addr_lists.c:574 but task is already holding lock: 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: spin_lock_bh include/linux/spinlock.h:334 [inline] 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: netif_addr_lock_bh include/linux/netdevice.h:4012 [inline] 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: dev_uc_unsync net/core/dev_addr_lists.c:597 [inline] 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: dev_uc_unsync+0xb4/0x1d0 net/core/dev_addr_lists.c:592 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&macvlan_netdev_addr_lock_key#2/2); lock(&macvlan_netdev_addr_lock_key#2/2); *** DEADLOCK *** May be due to missing lock nesting notation 7 locks held by kworker/u4:6/9944: #0: 000000009aff36a9 ((wq_completion)"%s""netns"){+.+.}, at: process_one_work+0x767/0x1570 kernel/workqueue.c:2124 #1: 00000000bd999853 (net_cleanup_work){+.+.}, at: process_one_work+0x79c/0x1570 kernel/workqueue.c:2128 #2: 00000000b59b6d10 (pernet_ops_rwsem){++++}, at: cleanup_net+0xa8/0x8b0 net/core/net_namespace.c:521 #3: 00000000c5fde9a9 (rtnl_mutex){+.+.}, at: rtnl_lock_unregistering net/core/dev.c:9748 [inline] #3: 00000000c5fde9a9 (rtnl_mutex){+.+.}, at: default_device_exit_batch+0xea/0x3c0 net/core/dev.c:9786 #4: 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: spin_lock_bh include/linux/spinlock.h:334 [inline] #4: 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: netif_addr_lock_bh include/linux/netdevice.h:4012 [inline] #4: 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: dev_uc_unsync net/core/dev_addr_lists.c:597 [inline] #4: 00000000a693d488 (&macvlan_netdev_addr_lock_key#2/2){+...}, at: dev_uc_unsync+0xb4/0x1d0 net/core/dev_addr_lists.c:592 #5: 00000000a22da1ff (&dev_addr_list_lock_key#2/1){+...}, at: netif_addr_lock_nested include/linux/netdevice.h:4007 [inline] #5: 00000000a22da1ff (&dev_addr_list_lock_key#2/1){+...}, at: dev_uc_unsync net/core/dev_addr_lists.c:598 [inline] #5: 00000000a22da1ff (&dev_addr_list_lock_key#2/1){+...}, at: dev_uc_unsync+0x136/0x1d0 net/core/dev_addr_lists.c:592 #6: 000000002227d5d3 (rcu_read_lock){....}, at: team_set_rx_mode+0x0/0x230 drivers/net/team/team.c:509 stack backtrace: CPU: 0 PID: 9944 Comm: kworker/u4:6 Not tainted 4.19.211-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: netns cleanup_net Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef lib/dump_stack.c:118 print_deadlock_bug kernel/locking/lockdep.c:1764 [inline] check_deadlock kernel/locking/lockdep.c:1808 [inline] validate_chain kernel/locking/lockdep.c:2404 [inline] __lock_acquire.cold+0x121/0x57e kernel/locking/lockdep.c:3416 lock_acquire+0x170/0x3c0 kernel/locking/lockdep.c:3908 _raw_spin_lock_nested+0x30/0x40 kernel/locking/spinlock.c:354 netif_addr_lock_nested include/linux/netdevice.h:4007 [inline] dev_uc_sync_multiple+0x11a/0x1e0 net/core/dev_addr_lists.c:574 team_set_rx_mode+0xce/0x230 drivers/net/team/team.c:1788 __dev_set_rx_mode+0x1d9/0x2f0 net/core/dev.c:7601 dev_uc_unsync net/core/dev_addr_lists.c:600 [inline] dev_uc_unsync+0x17b/0x1d0 net/core/dev_addr_lists.c:592 macvlan_stop+0xfe/0x4c0 drivers/net/macvlan.c:682 __dev_close_many+0x1ab/0x2e0 net/core/dev.c:1485 dev_close_many+0x24a/0x670 net/core/dev.c:1510 rollback_registered_many+0x2f7/0xe70 net/core/dev.c:8173 unregister_netdevice_many.part.0+0x1a/0x300 net/core/dev.c:9324 unregister_netdevice_many net/core/dev.c:9323 [inline] default_device_exit_batch+0x2fa/0x3c0 net/core/dev.c:9795 ops_exit_list+0xf9/0x150 net/core/net_namespace.c:156 cleanup_net+0x3b4/0x8b0 net/core/net_namespace.c:554 process_one_work+0x864/0x1570 kernel/workqueue.c:2153 worker_thread+0x64c/0x1130 kernel/workqueue.c:2296 kthread+0x33f/0x460 kernel/kthread.c:259 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415 device team0 left promiscuous mode device macvlan4 left promiscuous mode device macvlan5 left promiscuous mode device team_slave_0 left promiscuous mode device team_slave_1 left promiscuous mode device veth1_macvtap left promiscuous mode device veth0_macvtap left promiscuous mode device veth1_vlan left promiscuous mode device veth0_vlan left promiscuous mode Bluetooth: hci2: command 0x0419 tx timeout bond1 (unregistering): Released all slaves team0 (unregistering): Port device macvlan5 removed team0 (unregistering): Port device macvlan4 removed device hsr_slave_1 left promiscuous mode device hsr_slave_0 left promiscuous mode team0 (unregistering): Port device team_slave_1 removed team0 (unregistering): Port device team_slave_0 removed bond0 (unregistering): Releasing backup interface bond_slave_1 bond0 (unregistering): Releasing backup interface bond_slave_0 bond0 (unregistering): Released all slaves batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! IPv6: ADDRCONF(NETDEV_UP): batadv_slave_1: link is not ready batman_adv: batadv0: Interface activated: batadv_slave_1 IPv6: ADDRCONF(NETDEV_UP): veth0_macvtap: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready IPv6: ADDRCONF(NETDEV_UP): veth1_macvtap: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): veth1_macvtap: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready device veth0_macvtap entered promiscuous mode IPv6: ADDRCONF(NETDEV_UP): macvtap0: link is not ready device veth1_macvtap entered promiscuous mode IPv6: ADDRCONF(NETDEV_UP): macsec0: link is not ready IPv6: ADDRCONF(NETDEV_UP): veth0_to_batadv: link is not ready IPv6: ADDRCONF(NETDEV_UP): veth1_to_batadv: link is not ready batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! IPv6: ADDRCONF(NETDEV_UP): batadv_slave_0: link is not ready batman_adv: batadv0: Interface activated: batadv_slave_0 IPv6: ADDRCONF(NETDEV_CHANGE): macvtap0: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): macsec0: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_0: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_batadv: link becomes ready batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! IPv6: ADDRCONF(NETDEV_UP): batadv_slave_1: link is not ready batman_adv: batadv0: Interface activated: batadv_slave_1 IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready ieee80211 phy43: Selected rate control algorithm 'minstrel_ht' IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 ieee80211 phy44: Selected rate control algorithm 'minstrel_ht' IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready ieee80211 phy45: Selected rate control algorithm 'minstrel_ht' IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready ieee80211 phy46: Selected rate control algorithm 'minstrel_ht' *** Guest State *** CR0: actual=0x0000000000000020, shadow=0x0000000000000000, gh_mask=fffffffffffffff7 IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready CR4: actual=0x0000000000002040, shadow=0x0000000000000000, gh_mask=ffffffffffffe871 CR3 = 0x0000000000000000 RSP = 0x0000000000000b36 RIP = 0x0000000000000000 RFLAGS=0x00000002 DR7 = 0x0000000000000400 Sysenter RSP=0000000000000000 CS:RIP=0000:0000000000000000 CS: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 DS: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 SS: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 ES: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 FS: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 GS: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 GDTR: limit=0x00000000, base=0x0000000000000000 EXT4-fs (loop2): VFS: Can't find ext4 filesystem LDTR: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 IDTR: limit=0x00000000, base=0x0000000000000000 TR: sel=0x0000, attr=0x10000, limit=0x00000000, base=0x0000000000000000 EFER = 0x0000000000000000 PAT = 0x0007040600070406 DebugCtl = 0x0000000000000000 DebugExceptions = 0x0000000000000000 Interruptibility = 00000000 ActivityState = 00000000 audit: type=1800 audit(1634506265.405:323): pid=1862 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.2" name="bus" dev="sda1" ino=13954 res=0 *** Host State *** RIP = 0xffffffff811a9c2f RSP = 0xffff88809433f8c0 CS=0010 SS=0018 DS=0000 ES=0000 FS=0000 GS=0000 TR=0040 FSBase=00007fc569a7d700 GSBase=ffff8880ba000000 TRBase=fffffe0000034000 GDTBase=fffffe0000032000 IDTBase=fffffe0000000000 CR0=0000000080050033 CR3=0000000010678000 CR4=00000000003426f0 Sysenter RSP=fffffe0000034000 CS:RIP=0010:ffffffff88201290 EFER = 0x0000000000000d01 PAT = 0x0407050600070106 *** Control State *** PinBased=0000003f CPUBased=b5a06dfa SecondaryExec=000000e2 EntryControls=0000d1ff ExitControls=002fefff ExceptionBitmap=00060042 PFECmask=00000000 PFECmatch=00000000 VMEntry: intr_info=00000000 errcode=00000000 ilen=00000000 VMExit: intr_info=00000000 errcode=00000000 ilen=00000003 reason=80000021 qualification=0000000000000000 IDTVectoring: info=00000000 errcode=00000000 TSC Offset = 0xfffffe763f8599f6 TPR Threshold = 0x00 EPT pointer = 0x00000000950ea01e Virtual processor ID = 0x0002 EXT4-fs (loop2): VFS: Can't find ext4 filesystem audit: type=1800 audit(1634506265.595:324): pid=1862 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.2" name="bus" dev="sda1" ino=13954 res=0 netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. bond0: Releasing backup interface bond_slave_0 UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: error (device loop0): udf_read_inode: (ino 1408) failed !bh UDF-fs: error (device loop0): udf_fill_super: Error in udf_iget, block=96, partition=0 netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. IPVS: ftp: loaded support on port[0] = 21 base_sock_release(0000000061a144c9) sk=00000000b197b164 netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: error (device loop0): udf_read_inode: (ino 1408) failed !bh UDF-fs: error (device loop0): udf_fill_super: Error in udf_iget, block=96, partition=0 base_sock_release(00000000de7b26e6) sk=0000000045231245 orangefs_mount: mount request failed with -4 orangefs_mount: mount request failed with -4 IPVS: ftp: loaded support on port[0] = 21 netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: error (device loop5): udf_read_inode: (ino 1408) failed !bh UDF-fs: error (device loop5): udf_fill_super: Error in udf_iget, block=96, partition=0 netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: error (device loop5): udf_read_inode: (ino 1408) failed !bh netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. UDF-fs: error (device loop5): udf_fill_super: Error in udf_iget, block=96, partition=0 UDF-fs: error (device loop0): udf_read_inode: (ino 1408) failed !bh UDF-fs: error (device loop0): udf_fill_super: Error in udf_iget, block=96, partition=0 TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. IPVS: ftp: loaded support on port[0] = 21 TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) UDF-fs: error (device loop0): udf_read_inode: (ino 1408) failed !bh IPVS: ftp: loaded support on port[0] = 21 UDF-fs: error (device loop0): udf_fill_super: Error in udf_iget, block=96, partition=0 nla_parse: 2 callbacks suppressed netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2020/09/19 18:44 (1000) TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. UDF-fs: error (device loop0): udf_read_inode: (ino 1408) failed !bh UDF-fs: error (device loop0): udf_fill_super: Error in udf_iget, block=96, partition=0