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>