ixgbe rx & tx locks
John Baldwin
jhb at freebsd.org
Wed Sep 26 14:14:36 UTC 2012
On Tuesday, September 25, 2012 4:40:58 pm Jack Vogel wrote:
> Ah yes, at one time I was keeping the RX side lock when calling the stack,
> but then as I recall that had problems, so the code now releases and
> reaquires
> as you can see. It results in some contention but I'm not sure that's
> avoidable.
>
> I've seen some LRO related panics on the 1G driver that may be related to
> this lock release, or that's one theory I have..
>
> Thanks for the testing Vijay!
You only have to drop the RX lock around if_input() if you use the same lock
for both TX and RX (as if_transmit() / if_start() can be invoked while locks
in the network stack are held). If WITNESS complains, the fix is to only use
the MTX_NETWORK_LOCK "lock type name" for your transmit ring locks, not for
RX.
--
John Baldwin
More information about the freebsd-net
mailing list