1. 04 3月, 2017 2 次提交
  2. 18 2月, 2017 3 次提交
    • P
      sfc: do not device_attach if a reset is pending · 9c568fd8
      Peter Dunning 提交于
      efx_start_all can return without initialising queues as a reset is pending.
       This means that when netif_device_attach is called, the kernel can start
       sending traffic without having an initialised TX queue to send to.
      This patch avoids this by not calling netif_device_attach if there is a
       pending reset.
      
      Fixes: e283546c ("sfc:On MCDI timeout, issue an FLR (and mark MCDI to fail-fast)")
      Signed-off-by: NEdward Cree <ecree@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9c568fd8
    • B
      sfc: forget filters from sw table if hw replies ENOENT on removing them · 105eac6c
      Bert Kenward 提交于
      If the hw doesn't think they exist, we should defer to its authority.
      Signed-off-by: NEdward Cree <ecree@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      105eac6c
    • J
      sfc: fix filter_id misinterpretation in edge case · 0ccb998b
      Jon Cooper 提交于
      On EF10, hardware filter IDs are 13 bits, but in some places we store
       32-bit "full filter IDs" in which higher order bits encode the filter
       match-priority.  This could cause a filter to have a full filter ID of
       0xffff, which is also the value EFX_EF10_FILTER_ID_INVALID which we use
       in 16-bit "short" filter IDs (without match-priority bits).  This would
       occur if the hardware filter ID was 0x1fff and the match-priority was 7.
      Unfortunately, some code that checks for EFX_EF10_FILTER_ID_INVALID can
       be called on full filter IDs, and will WARN_ON if this ever happens.
      So, since we have plenty of spare bits in the full filter ID, this patch
       shifts the priority bits left one bit when constructing the full filter
       IDs, ensuring that the 0x2000 bit of a full filter ID will always be 0
       and thus no full filter ID can ever equal EFX_EF10_FILTER_ID_INVALID.
      
      This patch also replaces open-coded full<->short filter ID conversions
       with calls to functions, thus keeping the definition of the full filter
       ID format in one place.
      Signed-off-by: NEdward Cree <ecree@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0ccb998b
  3. 15 2月, 2017 1 次提交
  4. 12 2月, 2017 1 次提交
  5. 10 2月, 2017 3 次提交
  6. 08 2月, 2017 1 次提交
  7. 01 2月, 2017 1 次提交
  8. 28 1月, 2017 3 次提交
  9. 26 1月, 2017 1 次提交
  10. 18 1月, 2017 2 次提交
  11. 17 1月, 2017 2 次提交
    • E
      sfc: get PIO buffer size from the NIC · c634700f
      Edward Cree 提交于
      The 8000 series SFC NICs have 4K PIO buffers, rather than the 2K of
       the 7000 series.  Rather than having a hard-coded PIO buffer size
       (ER_DZ_TX_PIOBUF_SIZE), read it from the GET_CAPABILITIES_V2 MCDI
       response.
      Signed-off-by: NEdward Cree <ecree@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c634700f
    • E
      sfc: allow PIO more often · de1deff9
      Edward Cree 提交于
      If an option descriptor has been sent on a queue but not followed by a
       packet, there will have been no completion event, so the read and write
       counts won't match and we'll think we can't do PIO.  This combines with
       the fact that we have two TX queues (for en/disable checksum offload),
       and that both must be empty for PIO to happen.
      This patch adds a separate "packet_write_count" that tracks the most
       recent write_count we expect to see a completion event for; this excludes
       option descriptors but _includes_ PIO descriptors (even though they look
       like option descriptors).  This is then used, rather than write_count,
       in efx_nic_tx_is_empty().
      We only bother to maintain packet_write_count on EF10, since on Siena
       (a) there are no option descriptors and it always equals write_count, and
       (b) there's no PIO, so we don't need it anyway.
      Signed-off-by: NEdward Cree <ecree@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      de1deff9
  12. 11 1月, 2017 2 次提交
  13. 05 1月, 2017 1 次提交
  14. 04 12月, 2016 1 次提交
  15. 19 11月, 2016 3 次提交
  16. 10 11月, 2016 2 次提交
  17. 27 8月, 2016 4 次提交
  18. 19 8月, 2016 1 次提交
  19. 13 8月, 2016 4 次提交
  20. 16 6月, 2016 2 次提交