On Thu, Aug 17, 2006 at 01:03:20AM +0200, Arnd Bergmann wrote: > > Could well be related to latencies when going to the remote > node for descriptor DMAs. Have you tried if the hch's NUMA > patch or using numactl makes a difference here?
No. I guess I should try. > > > sounds like the right approach to simplify the code. > > > > Its not a big a driver. 'wc' says its 2.3 loc, which > > is 1/3 or 1/5 the size of tg3.c or the e1000*c files. > > Right, I was thinking of removing a lock or another, not > throwing out half of the driver ;-) There's only four lock points grand total. -- One on the receive side, -- one to protect the transmit head pointer, -- one to protect the transmit tail pointer, -- one to protect the location of the transmit low watermark. The last three share the same lock. I tried using distinct locks, but this worsened things, probably due to cache-line trashing. I tried removing the head pointer lock, but this failed. I don't know why, and was surprised by this. I thought hard_start_xmit() was serialized. --linas - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html