linux_dsm_epyc7002/drivers/net/ethernet/intel/e1000e
Yanir Lubetkin 95f0d95046 e1000e: fix logical error in flush_desc_rings
The condition under which the flush should occur was reversed.  The fix
should be applied before any HW reset (unless followed by bus reset)
and before any power state transition from D0.

If E1000_FEXTNVM7_NEED_DESCRING_FLUSH bit is set in FEXTNVM7 and TDLEN > 0
the Tx ring should be flushed. (fixes ~95% of the hang states).
If the E1000_FEXTNVM7_NEED_DESCRING_FLUSH did not clear, we should also
flush the RX ring. Bug was caught by Alexander Duyck during a code review
when examining this fix.

Signed-off-by: Yanir Lubetkin <yanirx.lubetkin@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-06-03 03:29:52 -07:00
..
80003es2lan.c e1000e: Failure to write SHRA turns on PROMISC mode 2014-05-26 23:53:11 -07:00
80003es2lan.h e1000e: Cleanup - Update GPL header and Copyright 2014-03-07 21:55:27 -08:00
82571.c e1000e: Cleanup handling of VLAN_HLEN as a part of max frame size 2015-05-04 01:20:30 -07:00
82571.h e1000e: Cleanup - Update GPL header and Copyright 2014-03-07 21:55:27 -08:00
defines.h e1000e: initial support for i219 2015-02-23 17:11:53 -08:00
e1000.h e1000e: Add pm_qos header 2015-05-12 23:22:03 -04:00
ethtool.c e1000e: initial support for i219 2015-02-23 17:11:53 -08:00
hw.h e1000e: initial support for i219 2015-02-23 17:11:53 -08:00
ich8lan.c e1000e: remove call to do_div and sign mismatch warning 2015-06-03 03:24:42 -07:00
ich8lan.h e1000e: i219 fix unit hang on reset and runtime D3 2015-06-03 03:10:20 -07:00
mac.c e1000e: remove unnecessary break after return 2014-07-20 21:30:18 -07:00
mac.h e1000e: Failure to write SHRA turns on PROMISC mode 2014-05-26 23:53:11 -07:00
Makefile e1000e: Cleanup - Update GPL header and Copyright 2014-03-07 21:55:27 -08:00
manage.c e1000e: delete excessive space character in debug message 2014-08-12 01:16:19 -07:00
manage.h e1000e: Cleanup - Update GPL header and Copyright 2014-03-07 21:55:27 -08:00
netdev.c e1000e: fix logical error in flush_desc_rings 2015-06-03 03:29:52 -07:00
nvm.c e1000e: Add code to check return values on NVM accesses 2014-07-25 20:51:00 -07:00
nvm.h e1000e: Cleanup - Update GPL header and Copyright 2014-03-07 21:55:27 -08:00
param.c e1000e: Cleanup to fix checkpatch missing blank lines 2014-04-23 01:05:08 -07:00
phy.c e1000e: Cleanup to fix checkpatch missing blank lines 2014-04-23 01:05:08 -07:00
phy.h e1000e: Workaround for dropped packets in Gig/100 speeds on 82579 2014-05-05 12:54:33 -07:00
ptp.c ptp: e1000e: use helpers for converting ns to timespec. 2015-03-31 17:19:18 -04:00
regs.h e1000e: i219 fix unit hang on reset and runtime D3 2015-06-03 03:10:20 -07:00