mirror_ubuntu-kernels/drivers/net/ethernet/intel/ixgbe
Parikh, Neerav 2afaa00d2f ixgbe: Fix incorrect disabling of Tx hang check in case of PFC
The XOFF received statistic registers are per priority based and not per
traffic class. The ixgbe driver was incorrectly considering them to be for
each traffic class; and then disabling the "Tx hang" check for the queues
that belonged to the particular traffic class that had received PFC frames.

The above logic worked fine in scenario where the user priority and traffic
class number matched e.g. priority 0 is mapped to traffic class 0 and so on.
But, when multiple user priorities are mapped to a single traffic class or
when user priorities and traffic class numbers do not line up; the ixgbe
driver may disable the "Tx hang" check for queues belonging to a traffic
class that did not receive PFC frames and keep the "Tx hang" check enabled
for the queues that did receive the PFC frames.

This patch corrects the above in the code by considering the statistics
on a per priority basis; then getting the traffic class the user priority
belongs to and disabling the "Tx hang" check for queues that belong
to that traffic class.

Signed-off-by: Neerav Parikh <Neerav.Parikh@intel.com>
Acked-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Tested-by: Marcus Dennis <marcusx.e.dennis@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2012-11-28 04:28:56 -08:00
..
ixgbe_82598.c ixgbe: Update link flow control to correctly handle multiple packet buffer DCB 2012-05-04 03:25:24 -07:00
ixgbe_82599.c ixgbe: Add support for pipeline reset 2012-10-29 22:14:48 -07:00
ixgbe_common.c ixgbe: ethtool correctly identify autoneg setting 2012-11-22 01:39:43 -08:00
ixgbe_common.h ixgbe: ethtool correctly identify autoneg setting 2012-11-22 01:39:43 -08:00
ixgbe_dcb_82598.c ixgbe: Clean up priority based flow control 2012-05-09 22:15:40 -07:00
ixgbe_dcb_82598.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_dcb_82599.c ixgbe: Clean up priority based flow control 2012-05-09 22:15:40 -07:00
ixgbe_dcb_82599.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_dcb_nl.c ixgbe: Populate the prio_tc_map in ixgbe_setup_tc 2012-07-14 14:29:19 -07:00
ixgbe_dcb.c ixgbe: Use num_tcs.pg_tcs as upper limit for TC when checking based on UP 2012-07-21 16:05:28 -07:00
ixgbe_dcb.h ixgbe: Populate the prio_tc_map in ixgbe_setup_tc 2012-07-14 14:29:19 -07:00
ixgbe_debugfs.c ixgbe: convert to use simple_open() 2012-11-22 01:39:31 -08:00
ixgbe_ethtool.c ixgbe: ethtool correctly identify autoneg setting 2012-11-22 01:39:43 -08:00
ixgbe_fcoe.c ixgbe: Enable jumbo frames support w/ SR-IOV 2012-10-19 04:04:14 -07:00
ixgbe_fcoe.h ixgbe: Make FCoE allocation and configuration closer to how rings work 2012-07-19 18:18:49 -07:00
ixgbe_lib.c ixgbe: fix default setting of TXDCTL.WTHRESH 2012-11-01 02:00:10 -07:00
ixgbe_main.c ixgbe: Fix incorrect disabling of Tx hang check in case of PFC 2012-11-28 04:28:56 -08:00
ixgbe_mbx.c ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_mbx.h ixgbe: Add support for GET_QUEUES message to get DCB configuration 2012-10-22 21:14:54 -07:00
ixgbe_phy.c ixgbe: add support for 1G SX modules 2012-06-20 01:37:04 -07:00
ixgbe_phy.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_ptp.c ixgbe: remove needless queuing for L4 ptp packets 2012-11-22 01:39:37 -08:00
ixgbe_sriov.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next 2012-10-31 14:26:44 -04:00
ixgbe_sriov.h ixgbe: Change how we check for pre-existing and assigned VFs 2012-07-21 16:02:56 -07:00
ixgbe_sysfs.c drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
ixgbe_type.h ixgbe: add WOL support for new subdevice id 2012-10-22 21:15:57 -07:00
ixgbe_x540.c ixgbe: Correctly set SAN MAC RAR pool to default pool of PF 2012-07-19 18:19:37 -07:00
ixgbe.h ptp: Enable clock drivers along with associated net/PHY drivers 2012-11-01 11:35:18 -04:00
Makefile ptp: Enable clock drivers along with associated net/PHY drivers 2012-11-01 11:35:18 -04:00