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 _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"