13 May, 2011
1 commit
-
When removing last vlan from a device, garp_uninit_applicant() calls
synchronize_rcu() to make sure no user can still manipulate struct
garp_applicant before we free it.Use call_rcu() instead, as a step to further net_device dismantle
optimizations.Add the temporary garp_cleanup_module() function to make sure no pending
call_rcu() are left at module unload time [ this will be removed when
kfree_rcu() is available ]Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller
10 May, 2011
1 commit
-
Speedup vlan dismantling in CONFIG_VLAN_8021Q_GVRP=y cases,
by using a call_rcu() to free the memory instead of waiting with
expensive synchronize_rcu() [ while RTNL is held ]Signed-off-by: Eric Dumazet
Cc: Ben Greear
Cc: Patrick McHardy
Cc: Paul E. McKenney
Signed-off-by: David S. Miller
26 Oct, 2010
1 commit
-
(struct net_device)->garp_port is rcu protected :
(struct garp_port)->applicants is rcu protected :add __rcu annotation and proper rcu primitives.
Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller
06 Jul, 2008
2 commits
-
Add GVRP support for dynamically registering VLANs with switches.
By default GVRP is disabled because we only support the applicant-only
participant model, which means it should not be enabled on vlans that
are members of a bridge. Since there is currently no way to cleanly
determine that, the user is responsible for enabling it.The code is pretty small and low impact, its wrapped in a config
option though because it depends on the GARP implementation and
the STP core.Signed-off-by: Patrick McHardy
Signed-off-by: David S. Miller -
Add an implementation of the GARP (Generic Attribute Registration Protocol)
applicant-only participant. This will be used by the following patch to
add GVRP support to the VLAN code.Signed-off-by: Patrick McHardy
Signed-off-by: David S. Miller