1. 14 5月, 2018 1 次提交
  2. 22 3月, 2018 1 次提交
  3. 17 3月, 2018 1 次提交
  4. 06 1月, 2018 1 次提交
    • J
      xdp/qede: setup xdp_rxq_info and intro xdp_rxq_info_is_reg · c0124f32
      Jesper Dangaard Brouer 提交于
      The driver code qede_free_fp_array() depend on kfree() can be called
      with a NULL pointer. This stems from the qede_alloc_fp_array()
      function which either (kz)alloc memory for fp->txq or fp->rxq.
      This also simplifies error handling code in case of memory allocation
      failures, but xdp_rxq_info_unreg need to know the difference.
      
      Introduce xdp_rxq_info_is_reg() to handle if a memory allocation fails
      and detect this is the failure path by seeing that xdp_rxq_info was
      not registred yet, which first happens after successful alloaction in
      qede_init_fp().
      
      Driver hook points for xdp_rxq_info:
       * reg  : qede_init_fp
       * unreg: qede_free_fp_array
      
      Tested on actual hardware with samples/bpf program.
      
      V2: Driver have no proper error path for failed XDP RX-queue info reg, as
      qede_init_fp() is a void function.
      
      Cc: everest-linux-l2@cavium.com
      Cc: Ariel Elior <Ariel.Elior@cavium.com>
      Signed-off-by: NJesper Dangaard Brouer <brouer@redhat.com>
      Signed-off-by: NAlexei Starovoitov <ast@kernel.org>
      c0124f32
  5. 03 1月, 2018 1 次提交
  6. 19 12月, 2017 1 次提交
  7. 03 12月, 2017 1 次提交
  8. 05 11月, 2017 1 次提交
  9. 27 7月, 2017 1 次提交
  10. 21 6月, 2017 3 次提交
  11. 05 6月, 2017 2 次提交
  12. 25 5月, 2017 2 次提交
  13. 22 5月, 2017 5 次提交
  14. 09 5月, 2017 2 次提交
  15. 28 4月, 2017 1 次提交
  16. 25 4月, 2017 3 次提交
  17. 18 4月, 2017 1 次提交
  18. 07 4月, 2017 3 次提交
    • M
      qede: Support XDP adjustment of headers · 059eeb07
      Mintz, Yuval 提交于
      In case an XDP program is attached, reserve XDP_PACKET_HEADROOM
      bytes at the beginning of the packet for the program to play
      with.
      
      Modify the XDP logic in the driver to fill-in the missing bits
      and re-calculate offsets and length after the program has finished
      running to properly reflect the current status of the packet.
      
      We can then go and remove the limitation of not supporting XDP programs
      where xdp_adjust_head is set.
      Signed-off-by: NYuval Mintz <Yuval.Mintz@cavium.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      059eeb07
    • M
      qede: Add support for ingress headroom · 15ed8a47
      Mintz, Yuval 提交于
      Driver currently doesn't support any headroom; The only 'available'
      space it has in the head of the buffer is due to the placement
      offset.
      In order to allow [later] support of XDP adjustment of headroom,
      modify the the ingress flow to properly handle a scenario where
      the packets would have such.
      Signed-off-by: NYuval Mintz <Yuval.Mintz@cavium.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      15ed8a47
    • M
      qede: Correct XDP forward unmapping · 89e1afc4
      Mintz, Yuval 提交于
      Driver is currently using dma_unmap_single() with the address it
      passed to device for the purpose of forwarding, but the XDP
      transmission buffer was originally a page allocated for the rx-queue.
      The mapped address is likely to differ from the original mapped
      address due to the placement offset.
      
      This difference is going to get even bigger once we support headroom.
      
      Cache the original mapped address of the page, and use it for unmapping
      of the buffer when completion arrives for the XDP forwarded packet.
      Signed-off-by: NYuval Mintz <Yuval.Mintz@cavium.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      89e1afc4
  19. 15 3月, 2017 1 次提交
  20. 21 2月, 2017 3 次提交
  21. 16 2月, 2017 1 次提交
  22. 09 1月, 2017 1 次提交
  23. 02 1月, 2017 3 次提交