ixgbe & if_igb RX ring locking

Ryan Stone rysto32 at gmail.com
Mon Oct 22 01:43:23 UTC 2012


On Sun, Oct 21, 2012 at 2:21 PM, Alexander V. Chernikov
<melifaro at freebsd.org> wrote:
>> ix:rx ->  udp is also fairly obvious (here's one backtrace):
> The same question, where "udp" -> "ix:rx" can happen ?

It can't happen directly as far as I can tell.  But to trigger a
deadlock, "all" that has to happen is that a thread holds each mutex
in the cycle while trying to acquire the next mutex in the cycle.  I
realize that in this case that requires five separate threads to all
lose a race simultaneously, but it's still theoretically possible and
needs to be avoided.


More information about the freebsd-net mailing list