1. 31 12月, 2014 1 次提交
  2. 27 5月, 2014 2 次提交
  3. 23 4月, 2014 1 次提交
  4. 28 3月, 2014 1 次提交
  5. 08 3月, 2014 3 次提交
  6. 25 9月, 2013 1 次提交
    • J
      intel: Remove extern from function prototypes · 5ccc921a
      Joe Perches 提交于
      There are a mix of function prototypes with and without extern
      in the kernel sources.  Standardize on not using extern for
      function prototypes.
      
      Function prototypes don't need to be written with extern.
      extern is assumed by the compiler.  Its use is as unnecessary as
      using auto to declare automatic/local variables in a block.
      Signed-off-by: NJoe Perches <joe@perches.com>
      5ccc921a
  7. 28 7月, 2013 1 次提交
  8. 07 5月, 2013 1 次提交
  9. 28 3月, 2013 1 次提交
  10. 08 3月, 2013 5 次提交
  11. 05 2月, 2013 6 次提交
  12. 01 2月, 2013 1 次提交
  13. 30 1月, 2013 1 次提交
    • B
      e1000e: enable ECC on I217/I218 to catch packet buffer memory errors · 28600304
      Bruce Allan 提交于
      In rare instances, memory errors have been detected in the internal packet
      buffer memory on I217/I218 when stressed under certain environmental
      conditions.  Enable Error Correcting Code (ECC) in hardware to catch both
      correctable and uncorrectable errors.  Correctable errors will be handled
      by the hardware.  Uncorrectable errors in the packet buffer will cause the
      packet to be received with an error indication in the buffer descriptor
      causing the packet to be discarded.  If the uncorrectable error is in the
      descriptor itself, the hardware will stop and interrupt the driver
      indicating the error.  The driver will then reset the hardware in order to
      clear the error and restart.
      
      Both types of errors will be accounted for in statistics counters.
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Cc: <stable@vger.kernel.org> # 3.5.x & 3.6.x
      Tested-by: NJeff Pieper <jeffrey.e.pieper@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      28600304
  14. 28 1月, 2013 4 次提交
  15. 27 1月, 2013 5 次提交
  16. 18 1月, 2013 2 次提交
  17. 16 1月, 2013 1 次提交
    • B
      e1000e: unexpected "Reset adapter" message when cable pulled · 12d43f7d
      Bruce Allan 提交于
      When there is heavy traffic and the cable is pulled, the driver must reset
      the adapter to flush the Tx queue in hardware.  This causes the reset path
      to be scheduled and logs the message "Reset adapter" which could be mis-
      interpreted as an error by the user.  Change how the reset path is invoked
      for this scenario by using the same method done in an existing work-around
      for 80003es2lan (i.e. set a flag and if the flag is set in the reset code
      do not log the "Reset adapter" message since the reset is expected).
      
      Re-name the FLAG_RX_RESTART_NOW to FLAG_RESTART_NOW since it is used for
      resets in both the Rx and Tx specific code.
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Tested-by: NAaron Brown <aaron.f.brown@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      12d43f7d
  18. 01 12月, 2012 1 次提交
  19. 11 10月, 2012 1 次提交
    • H
      e1000e: Change wthresh to 1 to avoid possible Tx stalls · 8edc0e62
      Hiroaki SHIMODA 提交于
      This patch originated from Hiroaki SHIMODA but has been modified
      by Intel with some minor cleanups and additional commit log text.
      
      Denys Fedoryshchenko and others reported Tx stalls on e1000e with
      BQL enabled.  Issue was root caused to hardware delays. They were
      introduced because some of the e1000e hardware with transmit
      writeback bursting enabled, waits until the driver does an
      explict flush OR there are WTHRESH descriptors to write back.
      
      Sometimes the delays in question were on the order of seconds,
      causing visible lag for ssh sessions and unacceptable tx
      completion latency, especially for BQL enabled kernels.
      
      To avoid possible Tx stalls, change WTHRESH back to 1.
      
      The current plan is to investigate a method for re-enabling
      WTHRESH while not harming BQL, but those patches will be later
      for net-next if they work.
      
      please enqueue for stable since v3.3 as this bug was introduced in
      commit 3f0cfa3b
      Author: Tom Herbert <therbert@google.com>
      Date:   Mon Nov 28 16:33:16 2011 +0000
      
          e1000e: Support for byte queue limits
      
          Changes to e1000e to use byte queue limits.
      Reported-by: NDenys Fedoryshchenko <denys@visp.net.lb>
      Tested-by: NDenys Fedoryshchenko <denys@visp.net.lb>
      Signed-off-by: NHiroaki SHIMODA <shimoda.hiroaki@gmail.com>
      CC: eric.dumazet@gmail.com
      CC: therbert@google.com
      Signed-off-by: NJesse Brandeburg <jesse.brandeburg@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8edc0e62
  20. 31 8月, 2012 1 次提交
    • B
      e1000e: DoS while TSO enabled caused by link partner with small MSS · d821a4c4
      Bruce Allan 提交于
      With a low enough MSS on the link partner and TSO enabled locally, the
      networking stack can periodically send a very large (e.g.  64KB) TCP
      message for which the driver will attempt to use more Tx descriptors than
      are available by default in the Tx ring.  This is due to a workaround in
      the code that imposes a limit of only 4 MSS-sized segments per descriptor
      which appears to be a carry-over from the older e1000 driver and may be
      applicable only to some older PCI or PCIx parts which are not supported in
      e1000e.  When the driver gets a message that is too large to fit across the
      configured number of Tx descriptors, it stops the upper stack from queueing
      any more and gets stuck in this state.  After a timeout, the upper stack
      assumes the adapter is hung and calls the driver to reset it.
      
      Remove the unnecessary limitation of using up to only 4 MSS-sized segments
      per Tx descriptor, and put in a hard failure test to catch when attempting
      to check for message sizes larger than would fit in the whole Tx ring.
      Refactor the remaining logic that limits the size of data per Tx descriptor
      from a seemingly arbitrary 8KB to a limit based on the dynamic size of the
      Tx packet buffer as described in the hardware specification.
      
      Also, fix the logic in the check for space in the Tx ring for the next
      largest possible packet after the current one has been successfully queued
      for transmit, and use the appropriate defines for default ring sizes in
      e1000_probe instead of magic values.
      
      This issue goes back to the introduction of e1000e in 2.6.24 when it was
      split off from e1000.
      Reported-by: NBen Hutchings <bhutchings@solarflare.com>
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Cc: Stable <stable@vger.kernel.org> [2.6.24+]
      Tested-by: NAaron Brown <aaron.f.brown@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d821a4c4