ixgbe: DCB, fix TX hang occurring in stress condition with PFC
authorJohn Fastabend <john.r.fastabend@intel.com>
Thu, 28 Oct 2010 00:59:57 +0000 (00:59 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 28 Oct 2010 17:19:00 +0000 (10:19 -0700)
commit9806307a1c5a2a79e268ae4e78b437d38c8adf7f
tree1a4ceada09e85a3cd9083790c6b16a16e99bb928
parentaffa9dfb04b7e2e3a0b0e6d844ea0c9ed97505f9
ixgbe: DCB, fix TX hang occurring in stress condition with PFC

The DCB credits refill quantum _must_ be greater than half the max
packet size. This is needed to guarantee that TX DMA operations
are not attempted during a pause state. Additionally, the min IFG
must be set correctly for DCB mode. If a DMA operation is
requested unexpectedly during the pause state the HW data
store may be corrupted leading to a DMA hang.  The DMA hang
requires a reset to correct. This fixes the HW configuration
to avoid this condition.

Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ixgbe/ixgbe_dcb.c
drivers/net/ixgbe/ixgbe_dcb.h
drivers/net/ixgbe/ixgbe_dcb_82599.c
drivers/net/ixgbe/ixgbe_dcb_82599.h
drivers/net/ixgbe/ixgbe_main.c