]> git.baikalelectronics.ru Git - kernel.git/commit
net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend
authorGrygorii Strashko <grygorii.strashko@ti.com>
Fri, 22 May 2020 17:09:28 +0000 (20:09 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 23 May 2020 23:33:20 +0000 (16:33 -0700)
commitef926793a15f755b004eca0277a7ff605de908d4
tree14cbc0f0748fbac0c44befa5a1764cc311dca2a5
parent5fb88db451273f10a5e4b89d449170036712f511
net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend

vlan_for_each() are required to be called with rtnl_lock taken, otherwise
ASSERT_RTNL() warning will be triggered - which happens now during System
resume from suspend:
  cpsw_suspend()
  |- cpsw_ndo_stop()
    |- __hw_addr_ref_unsync_dev()
      |- cpsw_purge_all_mc()
         |- vlan_for_each()
            |- ASSERT_RTNL();

Hence, fix it by surrounding cpsw_ndo_stop() by rtnl_lock/unlock() calls.

Fixes: f5ffcc44a804 ("net: ethernet: ti: cpsw: fix vlan mcast")
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/cpsw.c