net: dsa: mv88e6xxx: remove bridge work
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Sat, 14 May 2016 00:38:23 +0000 (20:38 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 May 2016 17:46:24 +0000 (13:46 -0400)
commit553eb544444e28749e2d752dee11e2ae4a3ecfb6
tree0cbe4d8f3cfba3393be578a5866ff48b029c5fd0
parentb0e95ccdd77591f108c938bbc702b57554a1665d
net: dsa: mv88e6xxx: remove bridge work

Now that the bridge code defers the switchdev port state setting, there
is no need to defer the port STP state change within the mv88e6xxx code.
Thus get rid of the driver's bridge work code.

This also fixes a race condition where the DSA layer assumes that the
bridge code already set the unbridged port's STP state to Disabled
before restoring the Forwarding state.

As a consequence, this also fixes the FDB flush for the unbridged port
which now correctly occurs during the Forwarding to Disabled transition.

Fixes: 0bc05d585d38 ("switchdev: allow caller to explicitly request attr_set as deferred")
Reported-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx.c
drivers/net/dsa/mv88e6xxx.h