]> www.infradead.org Git - users/jedix/linux-maple.git/commit
i40e: Fix RS bit update in Tx path and disable force WB workaround
authorAnjali Singhai <anjali.singhai@intel.com>
Sat, 26 Sep 2015 01:26:13 +0000 (18:26 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Thu, 10 Mar 2016 16:31:59 +0000 (08:31 -0800)
commitc7580f987a35523e37fefb4d339a67b0c5a5bfd3
tree8d24d0d26d90498f6c3b9b3aa78b1bc754b86bd1
parent48b634008d567e1a6965f35d585004dc12dd1e6b
i40e: Fix RS bit update in Tx path and disable force WB workaround

Orabug: 22342532

This patch fixes the issue of forcing WB too often causing us to not
benefit from NAPI.

Without this patch we were forcing WB/arming interrupt too often taking
away the benefits of NAPI and causing a performance impact.

With this patch we disable force WB in the clean routine for X710
and XL710 adapters. X722 adapters do not enable interrupt to force
a WB and benefit from WB_ON_ITR and hence force WB is left enabled
for those adapters.
For XL710 and X710 adapters if we have less than 4 packets pending
a software Interrupt triggered from service task will force a WB.

This patch also changes the conditions for setting RS bit as described
in code comments. This optimizes when the HW does a tail bump and when
it does a WB. It also optimizes when we do a wmb.

Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
(cherry picked from commit 5804474311912c1b80601a1afee052e8df962cd4)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
drivers/net/ethernet/intel/i40e/i40e_txrx.c
drivers/net/ethernet/intel/i40e/i40e_txrx.h