IB/hfi1: Tune netdev xmit cachelines
authorMike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
Mon, 13 Sep 2021 13:28:42 +0000 (09:28 -0400)
committerJason Gunthorpe <jgg@nvidia.com>
Mon, 27 Sep 2021 23:06:42 +0000 (20:06 -0300)
commitf5dc70a0e1420fa95c9f3f0dd65e27a89a5c787d
treeb0c33bbdec2b53646d5bcb98a605ee7ed6c059a4
parenta7125869b2c3f495666bccb7c58567eddffaef59
IB/hfi1: Tune netdev xmit cachelines

This patch moves fields in the ring and creates a line for the producer
and the consumer.

The adds a consumer side variable that tracks the ring avail so that the
code doesn't have the read the other cacheline to get a count for every
packet. A read now only occurs when the avail is at 0.

Fixes: d99dc602e2a5 ("IB/hfi1: Add functions to transmit datagram ipoib packets")
Link: https://lore.kernel.org/r/20210913132842.131370.15636.stgit@awfm-01.cornelisnetworks.com
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hfi1/ipoib.h
drivers/infiniband/hw/hfi1/ipoib_tx.c
drivers/infiniband/hw/hfi1/trace_tx.h