linux-stable/net/802
Eric Dumazet f607a15800 garp: remove last synchronize_rcu() call
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 <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-05-12 17:46:56 -04:00
..
fc.c net: return operator cleanup 2010-09-23 14:33:39 -07:00
fddi.c net: return operator cleanup 2010-09-23 14:33:39 -07:00
garp.c garp: remove last synchronize_rcu() call 2011-05-12 17:46:56 -04:00
hippi.c net: return operator cleanup 2010-09-23 14:33:39 -07:00
Kconfig net: Add GARP applicant-only participant 2008-07-05 21:26:13 -07:00
Makefile net: Add GARP applicant-only participant 2008-07-05 21:26:13 -07:00
p8022.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
p8023.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
psnap.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
stp.c net/802: add __rcu annotations 2010-10-25 13:09:44 -07:00
tr.c net: return operator cleanup 2010-09-23 14:33:39 -07:00