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>
