]> git.baikalelectronics.ru Git - kernel.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)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 29 Sep 2015 00:38:28 +0000 (17:38 -0700)
commit28dab6d8676861139657f6c7136f08b1936a7768
treebf0357bb0ee7ed947cfd82291eeaf28c7f2b887a
parentc5136b9774d8f851637f2c5a849ae851f7c9b310
i40e: Fix RS bit update in Tx path and disable force WB workaround

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>
drivers/net/ethernet/intel/i40e/i40e_txrx.c
drivers/net/ethernet/intel/i40e/i40e_txrx.h