Subject: Re: [PATCH net-next v2 7/7] ibmvnic: Perform tx CSO during send scrq direct

From: Jakub Kicinski <[email-masked]>
Date: Wed, 7 Aug 2024 08:08:38 -0700

On Tue,  6 Aug 2024 14:37:06 -0500 Nick Child wrote:
> 1. NIC does checksum w headers, safely use send_subcrq_indirect:
>   - Packet rate: 631k txs
>   - Trace data:
>     ibmvnic_xmit = 44344685.87 us / 6234576 hits = AVG 7.11 us
>     ibmvnic_tx_scrq_flush = 33040649.69 us / 5638441 hits = AVG 5.86 us
>     send_subcrq_indirect = 37438922.24 us / 6030859 hits = AVG 6.21 us
>     skb_checksum_help = 4.07 us / 2 hits = AVG 2.04 us
>      ^ Notice hits, tracing this just for reassurance
> 
> 2. NIC does checksum w/o headers, dangerously use send_subcrq_direct:
>   - Packet rate: 831k txs
>   - Trace data:
>     ibmvnic_xmit = 48940092.29 us / 8187630 hits = AVG 5.98 us
>     ibmvnic_tx_scrq_flush = 31141879.57 us / 7948960 hits = AVG 3.92 us
>     send_subcrq_indirect = 8412506.03 us / 728781 hits = AVG 11.54
>      ^ notice hits is much lower
>     skb_checksum_help = 2.03 us / 1 hits = AVG 2.03
> 
> 3. driver does checksum, safely use send_subcrq_direct (THIS PATCH):
>   - Packet rate: 829k txs
>   - Trace data:
>     ibmvnic_xmit = 56696077.63 us / 8066168 hits = AVG 7.03 us
>     ibmvnic_tx_scrq_flush = 30219545.55 us / 7782409 hits = AVG 3.88 us
>     send_subcrq_indirect = 8638326.44 us / 763693 hits = AVG 11.31 us
>     skb_checksum_help = 8587456.16 us / 7526072 hits = AVG 1.14 us

Thanks for the numbers!

I presume the numbers are inclusive of all callees? It may be worth
while making ibmvnic_xmit more prominent, maybe indent the rest?
My first instinct was to add the AVGs in my head, and because of
different hit counts that's rather misguided.