[PATCH v5 bpf-next 0/2] introduce xdp_init_buff/xdp_prepare_buff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Introduce xdp_init_buff and xdp_prepare_buff utility routines to initialize
xdp_buff data structure and remove duplicated code in all XDP capable
drivers.

Changes since v4:
- fix xdp_init_buff/xdp_prepare_buff (natural order is xdp_init_buff() first
  and then xdp_prepare_buff())

Changes since v3:
- use __always_inline instead of inline for xdp_init_buff/xdp_prepare_buff
- add 'const bool meta_valid' to xdp_prepare_buff signature to avoid
  overwriting data_meta with xdp_set_data_meta_invalid()
- introduce removed comment in bnxt driver

Changes since v2:
- precompute xdp->data as hard_start + headroom and save it in a local
  variable to reuse it for xdp->data_end and xdp->data_meta in
  xdp_prepare_buff()

Changes since v1:
- introduce xdp_prepare_buff utility routine

Lorenzo Bianconi (2):
  net: xdp: introduce xdp_init_buff utility routine
  net: xdp: introduce xdp_prepare_buff utility routine

Acked-by: Shay Agroskin <shayagr@xxxxxxxxxx>
Acked-by: Martin Habets <habetsm.xilinx@xxxxxxxxx>
Acked-by: Camelia Groza <camelia.groza@xxxxxxx>

 drivers/net/ethernet/amazon/ena/ena_netdev.c  | 10 ++++----
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c |  9 +++----
 .../net/ethernet/cavium/thunder/nicvf_main.c  | 12 +++++-----
 .../net/ethernet/freescale/dpaa/dpaa_eth.c    | 10 ++++----
 .../net/ethernet/freescale/dpaa2/dpaa2-eth.c  | 14 ++++-------
 drivers/net/ethernet/intel/i40e/i40e_txrx.c   | 18 +++++++-------
 drivers/net/ethernet/intel/ice/ice_txrx.c     | 15 ++++++------
 drivers/net/ethernet/intel/igb/igb_main.c     | 18 +++++++-------
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 19 +++++++--------
 .../net/ethernet/intel/ixgbevf/ixgbevf_main.c | 19 +++++++--------
 drivers/net/ethernet/marvell/mvneta.c         | 10 +++-----
 .../net/ethernet/marvell/mvpp2/mvpp2_main.c   | 14 +++++------
 drivers/net/ethernet/mellanox/mlx4/en_rx.c    |  9 +++----
 .../net/ethernet/mellanox/mlx5/core/en_rx.c   |  8 ++-----
 .../ethernet/netronome/nfp/nfp_net_common.c   | 12 +++++-----
 drivers/net/ethernet/qlogic/qede/qede_fp.c    |  9 +++----
 drivers/net/ethernet/sfc/rx.c                 | 10 +++-----
 drivers/net/ethernet/socionext/netsec.c       |  9 +++----
 drivers/net/ethernet/ti/cpsw.c                | 18 +++++---------
 drivers/net/ethernet/ti/cpsw_new.c            | 18 +++++---------
 drivers/net/hyperv/netvsc_bpf.c               |  8 ++-----
 drivers/net/tun.c                             | 12 ++++------
 drivers/net/veth.c                            | 14 ++++-------
 drivers/net/virtio_net.c                      | 18 +++++---------
 drivers/net/xen-netfront.c                    | 10 ++++----
 include/net/xdp.h                             | 19 +++++++++++++++
 net/bpf/test_run.c                            | 11 ++++-----
 net/core/dev.c                                | 24 +++++++++----------
 28 files changed, 163 insertions(+), 214 deletions(-)

-- 
2.29.2




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux