Re: High contention on the sk_buff_head.lock

From: Vernon Mauery
Date: Wed Mar 18 2009 - 17:58:00 EST


Eilon Greenstein wrote:
On Wed, 2009-03-18 at 14:07 -0700, Vernon Mauery wrote:
The real "fix" would be probably to use a multi queue capable NIC
and a NIC driver that sets up multiple queues for TX (normally they
only do for RX). Then cores or a set of cores (often the number
of cores is larger than the number of NIC queues) could avoid this
problem. Disadvantage: more memory use.
Hmmm. So do either the netxen_nic or bnx2x drivers support multiple
queues? (that is the HW that I have access to right now). And do I
need to do anything to set them up?

The version of bnx2x in net-next support multi Tx queues (and Rx). It
will open an equal number of Tx and Rx queues up to 16 or the number of
cores in the system. You can validate that all queues are transmitting
with "ethtool -S" which has per queue statistics in that version.

Thanks. I will test to see how this affects this lock contention the
next time the broadcom hardware is available.

--Vernon
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/