/linux/include/net/ |
H A D | xdp_sock.h | 2 /* AF_XDP internal functions 94 * AF_XDP TX metadata hooks for network devices. 99 * Called when AF_XDP frame requested egress timestamp. 102 * Called when AF_XDP frame, that had requested egress timestamp, 106 * Called when AF_XDP frame requested HW checksum offload. csum_start 111 * Called when AF_XDP frame requested launch time HW offload support. 131 * @meta: pointer to AF_XDP metadata area 135 * it prepares AF_XDP egress packet. The value of @compl should be stored 151 * xsk_tx_metadata_request - Evaluate AF_XDP TX metadata at submission 153 * @meta: pointer to AF_XDP metadata area [all …]
|
H A D | xsk_buff_pool.h | 103 /* AF_XDP core. */ 118 /* AF_XDP, and XDP core. */ 135 /* AF_XDP ZC drivers, via xdp_sock_buff.h */
|
/linux/Documentation/bpf/ |
H A D | map_xskmap.rst | 13 This map type redirects raw XDP frames to `AF_XDP`_ sockets (XSKs), a new type of 15 user space without having to traverse the full network stack. An AF_XDP socket 43 An AF_XDP socket that is bound to a certain <netdev/queue_id> will *only* 50 the ``max_entries`` map parameter. For AF_XDP ``max_entries`` is equal to the number 179 For an example on how create AF_XDP sockets, please see the AF_XDP-example and 180 AF_XDP-forwarding programs in the `bpf-examples`_ directory in the `libxdp`_ repository. 181 For a detailed explanation of the AF_XDP interface please see: 184 - `AF_XDP`_ kernel documentation. 187 The most comprehensive resource for using XSKMAPs and AF_XDP is `libxdp`_. 190 .. _AF_XDP: https://www.kernel.org/doc/html/latest/networking/af_xdp.html [all …]
|
/linux/Documentation/networking/ |
H A D | xdp-rx-metadata.rst | 55 the AF_XDP use case, see below). 57 AF_XDP chapter 60 :doc:`af_xdp` use-case implies that there is a contract between the BPF 61 program that redirects XDP frames into the ``AF_XDP`` socket (``XSK``) and 67 ``METADATA_SIZE`` is an application-specific constant (``AF_XDP`` receive 70 Here is the ``AF_XDP`` consumer layout (note missing ``data_meta`` pointer)::
|
H A D | xsk-tx-metadata.rst | 4 AF_XDP TX Metadata 8 via :doc:`af_xdp`. Refer to :doc:`xdp-rx-metadata` on how to access similar 38 An AF_XDP application can request headrooms larger than ``sizeof(struct 76 Hardware Clock (PHC) to ensure accuracy. AF_XDP takes a different data path 78 their transmission. Instead, AF_XDP immediately hands off the packets to
|
/linux/tools/testing/selftests/drivers/net/ |
H A D | xdp_helper.c |
|
H A D | queues.py | 31 raise KsftSkipEx('AF_XDP unsupported') 33 raise KsftFailEx('unable to create AF_XDP socket')
|
/linux/tools/testing/selftests/bpf/ |
H A D | test_xsk.sh | 5 # AF_XDP selftests based on veth 7 # End-to-end AF_XDP over Veth test 28 # AF_XDP is an address family optimized for high performance packet processing, 31 # An AF_XDP socket is linked to a single UMEM which is a region of virtual 34 # Refer to AF_XDP Kernel Documentation for detailed information: 35 # https://www.kernel.org/doc/html/latest/networking/af_xdp.html
|
H A D | xskxceiver.h | 17 #ifndef AF_XDP 18 #define AF_XDP 44 macro 22 #define PF_XDP AF_XDP
|
H A D | xsk.c | 4 * AF_XDP user-space access library. 44 #ifndef AF_XDP 45 #define AF_XDP 44 macro 49 #define PF_XDP AF_XDP 241 umem->fd = socket(AF_XDP, SOCK_RAW | SOCK_CLOEXEC, 0); in xsk_umem__create() 569 xsk->fd = socket(AF_XDP, SOCK_RAW | SOCK_CLOEXEC, 0); in xsk_socket__create_shared()
|
/linux/drivers/net/ethernet/intel/ice/ |
H A D | ice_xsk.c | 604 * ice_clean_xdp_irq_zc - produce AF_XDP descriptors to CQ 606 * @xsk_pool: AF_XDP buffer pool pointer 666 * ice_xmit_xdp_tx_zc - AF_XDP ZC handler for XDP_TX 669 * @xsk_pool: AF_XDP buffer pool pointer 756 * @xsk_pool: AF_XDP buffer pool pointer 807 * @rx_ring: AF_XDP Rx ring 808 * @xsk_pool: AF_XDP buffer pool pointer 953 * ice_xmit_pkt - produce a single HW Tx descriptor out of AF_XDP descriptor 956 * @desc: AF_XDP descriptor to pull the DMA address and length from 978 * ice_xmit_pkt_batch - produce a batch of HW Tx descriptors out of AF_XDP descriptors [all …]
|
/linux/drivers/net/ethernet/intel/i40e/ |
H A D | i40e_xsk.c | 74 * i40e_xsk_pool_enable - Enable/associate an AF_XDP buffer pool to a 131 * i40e_xsk_pool_disable - Disassociate an AF_XDP buffer pool from a 173 * i40e_xsk_pool_setup - Enable/disassociate an AF_XDP buffer pool to/from 573 * i40e_xmit_zc - Performs zero-copy Tx AF_XDP 624 * i40e_clean_xdp_tx_irq - Completes AF_XDP entries, and cleans XDP entries 773 * i40e_xsk_any_rx_ring_enabled - Checks if Rx rings have an AF_XDP 777 * Returns true if any of the Rx rings has an AF_XDP buffer pool attached
|
/linux/net/xdp/ |
H A D | xsk_diag.c | 108 msg->xdiag_family = AF_XDP; in xsk_diag_fill() 198 .family = AF_XDP, 216 MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_NETLINK, NETLINK_SOCK_DIAG, AF_XDP);
|
/linux/tools/testing/selftests/bpf/progs/ |
H A D | xdp_metadata.c | 70 /* Forwarding UDP:8080 to AF_XDP */ in rx() 91 * timestamp, so put some non-zero value into AF_XDP frame for in rx()
|
H A D | xdp_hw_metadata.c | 69 /* Forwarding UDP:9091 to AF_XDP */ in rx()
|
/linux/drivers/net/ethernet/netronome/nfp/nfd3/ |
H A D | nfd3.h | 57 * @xdp: XSK buffer pool handle (for AF_XDP) 64 * buffer from the TX queue (for AF_XDP).
|
/linux/tools/include/uapi/linux/ |
H A D | if_xdp.h | 29 * handle multiple descriptors per packet thus enabling AF_XDP to split 136 /* AF_XDP offloads request. 'request' union member is consumed by the driver
|
H A D | netdev.h | 19 * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP
|
/linux/include/uapi/linux/ |
H A D | if_xdp.h | 29 * handle multiple descriptors per packet thus enabling AF_XDP to split 136 /* AF_XDP offloads request. 'request' union member is consumed by the driver
|
H A D | netdev.h | 19 * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP
|
/linux/net/ethtool/ |
H A D | channels.c | 172 /* Disabling channels, query zero-copy AF_XDP sockets */ in ethnl_set_channels() 177 …GENL_SET_ERR_MSG(info, "requested channel counts are too low for existing zerocopy AF_XDP sockets"… in ethnl_set_channels()
|
/linux/tools/testing/selftests/bpf/prog_tests/ |
H A D | xdp_metadata.c | 399 /* Setup separate AF_XDP for RX interface. */ in test_xdp_metadata() 463 /* Setup separate AF_XDP for TX interface nad send packet to the RX socket. */ in test_xdp_metadata() 477 /* Verify packet sent from AF_XDP has proper metadata. */ in test_xdp_metadata()
|
/linux/Documentation/translations/zh_CN/networking/ |
H A D | index.rst | 27 * af_xdp
|
/linux/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net.h | 293 * @xdp: XSK buffer pool handle (for AF_XDP) 310 * @xsk_rxbufs: Array of transmitted FL/RX buffers (for AF_XDP) 348 * @xsk_pool: XSK buffer pool active on vector queue pair (for AF_XDP) 499 * @xsk_pools: XSK buffer pools, @max_r_vecs in size (for AF_XDP).
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/ |
H A D | tx.c | 42 * in order, so post a NOP to get a CQE. Since AF_XDP doesn't distinguish
|