]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
i40e/i40evf: Fix RS bit update in Tx path and disable force WB workaround
authorAnjali Singhai Jain <anjali.singhai@intel.com>
Mon, 26 Oct 2015 23:44:29 +0000 (19:44 -0400)
committerTim Gardner <tim.gardner@canonical.com>
Mon, 29 Feb 2016 15:55:38 +0000 (08:55 -0700)
commitdc507493107d954ad06d1d3f96b374537ea0b7d9
tree6562bb4e268ee12c758199492c7a2d99e184046a
parent725356c01db7ea6adf1c64ffd7139784f000b533
i40e/i40evf: Fix RS bit update in Tx path and disable force WB workaround

BugLink: http://bugs.launchpad.net/bugs/1536474
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 amd when
it does a WB. It also optimizes when we do a wmb.

Change-ID: Id831e1ae7d3e2ec3f52cd0917b41ce1d22d75d9d
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 6a7fded776a778f728b13d83a2c9fc893580c080)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
drivers/net/ethernet/intel/i40evf/i40e_txrx.c
drivers/net/ethernet/intel/i40evf/i40e_txrx.h