Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Aug 2012 14:15:55 -0700
From:      Vijay Singh <vijju.singh@gmail.com>
To:        net@freebsd.org
Subject:   ixgbe rx & tx locks
Message-ID:  <CALCNsJSSQSWV7vNVR-Sn8CPDKbUBBLpSH0b-HYMJo3SXvkOY=w@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Folks, I've been looking into lock contention on the ixgbe rx & tx locks.

I have collected this data:

debug.lock.prof.stats:
     max  wait_max       total  wait_total       count    avg wait_avg
cnt_hold cnt_lock name
     263       304     1329357      858873      322010      4      2
0  45210 sys/dev/ixgbe/ixgbe.c:1349 (sleep mutex:e2a:tx(0))
     415       189    14314889       62933      739895     19      0
0  13694 sys/dev/ixgbe/ixgbe.c:1445 (sleep mutex:e2a:tx(0))

So the lock contention is coming from lock acquisitions in
ixgbe_handle_que() and ixgbe_msix_que().

I am unable to understand why, since I would not expect the deferred
task to execute in parallel with the msix interrupt handler.

rx is similar:

debug.lock.prof.stats:
     max  wait_max       total  wait_total       count    avg wait_avg
cnt_hold cnt_lock name
      88       893      672058      269855      821847      0      0
0    753 sys/dev/ixgbe/ixgbe.c:4211 (sleep mutex:e6b:rx(0))
     893        25     3994289        1937     1093238      3      0
0    561 sys/dev/ixgbe/ixgbe.c:4276 (sleep mutex:e6b:rx(0))

Any thoughts?

-vijay



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CALCNsJSSQSWV7vNVR-Sn8CPDKbUBBLpSH0b-HYMJo3SXvkOY=w>