Page MenuHomeFreeBSD

cxgbe: Add counters for iSCSI PDUs transmitted via TOE.
ClosedPublic

Authored by jhb on Mar 16 2021, 11:57 PM.

Diff Detail

Repository
R10 FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

jhb requested review of this revision.Mar 16 2021, 11:57 PM
sys/dev/cxgbe/t4_main.c
7224

Should we move all the toe stats out of the port_info and into the correct queue (txq, ofld_txq, rxq, ofld_rxq) instead? That would avoid an atomic and the toep->vi->pi->stat indirection on the hot path.

sys/dev/cxgbe/t4_main.c
7224

So I looked and this doesn't let us avoid the atomic sadly. For TOE TLS TX, the TXQ lock is only locked inside of t4_l2t_send() and not in the caller where the stats are bumped. Pushing the TXQ lock out into the caller isn't feasible I think because t4_l2t_send_slow() wants to do some work without the TXQ lock held. I'm not sure if the RXQ is locked for the TOE TLS RX stats (it might be). An alternative for all of these stats though might be to switch to counter_u64.

jhb retitled this revision from Add a counter of iSCSI PDUs transmitted via TOE. to cxgbe: Add counters for iSCSI PDUs transmitted via TOE..Apr 9 2021, 6:11 PM
  • Add octets stat and move to per queue.
This revision is now accepted and ready to land.Apr 12 2021, 2:40 AM