On Sun, Sep 29, 2002 at 05:20:22PM -0700, David S. Miller wrote:
> From: Dipankar Sarma <dipankar@in.ibm.com>
> Date: Mon, 30 Sep 2002 00:45:59 +0530
>
> > net_bh_lock: i have removed it, since it would synchronize to nothing. The
> > old protocol handlers should still run on UP, and on SMP the kernel prints
> > a warning upon use. Alexey, is this approach fine with you?
>
> The cache line bouncing of global_bh_lock and net_bh_lock in
> run_timer_tasklet() show up in our profiles, so getting rid of
> them is a good thing (TM).
>
> What ancient protocols are you running that make use of this?
I wasn't running any old protocols. It was a problem I faced
with my port of smptimers - I serialized
wrt BHs and old protocols using global_bh_lock and net_bh_lock (exported
it globally) respectively in the per-cpu tasklet that runs timers.
So, the spin_trylock() in run_timer_tasklet() would modify the
lock cache line and hence the bouncing. Getting rid of BHs and
old protocol serialization avoids this as in Ingo's latest patch.
>
> IPv4 and IPv6 both do not use it at all. Even IPX, Appletalk, and
> DecNET layers do not use it
This is the list, I think, by looking at packet_types -
802/psnap.c
appletalk/ddp.c
ax25/af_ax25.c
core/ext8022.c
econet/af_econet.c
irda/irsyms.c
x25/af_x25.c
Thanks
-- Dipankar Sarma <dipankar@in.ibm.com> http://lse.sourceforge.net Linux Technology Center, IBM Software Lab, Bangalore, India. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Mon Sep 30 2002 - 22:00:43 EST