1. 29 8月, 2017 4 次提交
  2. 25 7月, 2017 6 次提交
  3. 12 7月, 2017 2 次提交
    • M
      bnxt_en: Fix bug in ethtool -L. · 3b6b34df
      Michael Chan 提交于
      When changing channels from combined to rx/tx or vice versa, the code
      uses the wrong "sh" parameter to determine if we are reserving rings
      for shared or non-shared mode.  It should be using the ethtool requested
      "sh" parameter instead of the current "sh" parameter.
      
      Fix it by passing the "sh" parameter to bnxt_reserve_rings().  For
      ethtool, we will pass in the requested "sh" parameter.
      
      Fixes: 391be5c2 ("bnxt_en: Implement new scheme to reserve tx rings.")
      Signed-off-by: NMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3b6b34df
    • M
      bnxt_en: Fix race conditions in .ndo_get_stats64(). · f9b76ebd
      Michael Chan 提交于
      .ndo_get_stats64() may not be protected by RTNL and can race with
      .ndo_stop() or other ethtool operations that can free the statistics
      memory.  Fix it by setting a new flag BNXT_STATE_READ_STATS and then
      proceeding to read statistics memory only if the state is OPEN.  The
      close path that frees the memory clears the OPEN state and then waits
      for the BNXT_STATE_READ_STATS to clear before proceeding to free the
      statistics memory.
      
      Fixes: c0c050c5 ("bnxt_en: New Broadcom ethernet driver.")
      Signed-off-by: NMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f9b76ebd
  4. 24 6月, 2017 1 次提交
  5. 31 5月, 2017 3 次提交
  6. 25 4月, 2017 2 次提交
  7. 05 4月, 2017 4 次提交
  8. 31 3月, 2017 1 次提交
  9. 10 3月, 2017 1 次提交
  10. 13 2月, 2017 2 次提交
  11. 08 2月, 2017 12 次提交
  12. 14 1月, 2017 1 次提交
  13. 30 12月, 2016 1 次提交
    • M
      bnxt_en: Handle no aggregation ring gracefully. · bdbd1eb5
      Michael Chan 提交于
      The current code assumes that we will always have at least 2 rx rings, 1
      will be used as an aggregation ring for TPA and jumbo page placements.
      However, it is possible, especially on a VF, that there is only 1 rx
      ring available.  In this scenario, the current code will fail to initialize.
      To handle it, we need to properly set up only 1 ring without aggregation.
      Set a new flag BNXT_FLAG_NO_AGG_RINGS for this condition and add logic to
      set up the chip to place RX data linearly into a single buffer per packet.
      Signed-off-by: NMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bdbd1eb5