]> git.baikalelectronics.ru Git - kernel.git/commit
cxgb4: fix throughput drop during Tx backpressure
authorRahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Thu, 19 Mar 2020 17:38:09 +0000 (23:08 +0530)
committerDavid S. Miller <davem@davemloft.net>
Fri, 20 Mar 2020 04:29:07 +0000 (21:29 -0700)
commit88c87a032fa2874139399399e83a74d815a2952b
tree16e8091cd15fee8c121c75a8ba81726f184639b8
parent233cff7e9f37a745ff9d718981fa37b7530b3326
cxgb4: fix throughput drop during Tx backpressure

commit 963009280830 ("cxgb4: request the TX CIDX updates to status page")
reverted back to getting Tx CIDX updates via DMA, instead of interrupts,
introduced by commit e394725b5503 ("cxgb4/cxgb4vf: Add support for SGE
doorbell queue timer")

However, it missed reverting back several code changes where Tx CIDX
updates are not explicitly requested during backpressure when using
interrupt mode. These missed changes cause slow recovery during
backpressure because the corresponding interrupt no longer comes and
hence results in Tx throughput drop.

So, revert back these missed code changes, as well, which will allow
explicitly requesting Tx CIDX updates when backpressure happens.
This enables the corresponding interrupt with Tx CIDX update message
to get generated and hence speed up recovery and restore back
throughput.

Fixes: 963009280830 ("cxgb4: request the TX CIDX updates to status page")
Fixes: e394725b5503 ("cxgb4/cxgb4vf: Add support for SGE doorbell queue timer")
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/sge.c