@@ -1244,7 +1244,6 @@ perf_ethdev_setup(struct evt_test *test, struct evt_options *opt)
struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
},
.rx_adv_conf = {
.rss_conf = {
@@ -68,7 +68,6 @@ struct app_params app = {
static struct rte_eth_conf port_conf = {
.rxmode = {
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM,
},
.rx_adv_conf = {
@@ -745,7 +745,7 @@ static void cmd_help_long_parsed(void *parsed_result,
"port config <port_id> rx_offload vlan_strip|"
"ipv4_cksum|udp_cksum|tcp_cksum|tcp_lro|qinq_strip|"
- "outer_ipv4_cksum|macsec_strip|header_split|"
+ "outer_ipv4_cksum|macsec_strip|"
"vlan_filter|vlan_extend|jumbo_frame|scatter|"
"buffer_split|timestamp|security|keep_crc on|off\n"
" Enable or disable a per port Rx offloading"
@@ -753,7 +753,7 @@ static void cmd_help_long_parsed(void *parsed_result,
"port (port_id) rxq (queue_id) rx_offload vlan_strip|"
"ipv4_cksum|udp_cksum|tcp_cksum|tcp_lro|qinq_strip|"
- "outer_ipv4_cksum|macsec_strip|header_split|"
+ "outer_ipv4_cksum|macsec_strip|"
"vlan_filter|vlan_extend|jumbo_frame|scatter|"
"buffer_split|timestamp|security|keep_crc on|off\n"
" Enable or disable a per queue Rx offloading"
@@ -12522,7 +12522,7 @@ static cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_offloa
(struct cmd_config_per_port_rx_offload_result,
offload, "vlan_strip#ipv4_cksum#udp_cksum#tcp_cksum#tcp_lro#"
"qinq_strip#outer_ipv4_cksum#macsec_strip#"
- "header_split#vlan_filter#vlan_extend#jumbo_frame#"
+ "vlan_filter#vlan_extend#jumbo_frame#"
"scatter#buffer_split#timestamp#security#"
"keep_crc#rss_hash");
static cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_on_off =
@@ -12604,7 +12604,7 @@ static cmdline_parse_inst_t cmd_config_per_port_rx_offload = {
.data = NULL,
.help_str = "port config <port_id> rx_offload vlan_strip|ipv4_cksum|"
"udp_cksum|tcp_cksum|tcp_lro|qinq_strip|outer_ipv4_cksum|"
- "macsec_strip|header_split|vlan_filter|vlan_extend|"
+ "macsec_strip|vlan_filter|vlan_extend|"
"jumbo_frame|scatter|buffer_split|timestamp|security|"
"keep_crc|rss_hash on|off",
.tokens = {
@@ -12654,7 +12654,7 @@ static cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_offlo
(struct cmd_config_per_queue_rx_offload_result,
offload, "vlan_strip#ipv4_cksum#udp_cksum#tcp_cksum#tcp_lro#"
"qinq_strip#outer_ipv4_cksum#macsec_strip#"
- "header_split#vlan_filter#vlan_extend#jumbo_frame#"
+ "vlan_filter#vlan_extend#jumbo_frame#"
"scatter#buffer_split#timestamp#security#keep_crc");
static cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_on_off =
TOKEN_STRING_INITIALIZER
@@ -12712,7 +12712,7 @@ static cmdline_parse_inst_t cmd_config_per_queue_rx_offload = {
.help_str = "port <port_id> rxq <queue_id> rx_offload "
"vlan_strip|ipv4_cksum|"
"udp_cksum|tcp_cksum|tcp_lro|qinq_strip|outer_ipv4_cksum|"
- "macsec_strip|header_split|vlan_filter|vlan_extend|"
+ "macsec_strip|vlan_filter|vlan_extend|"
"jumbo_frame|scatter|buffer_split|timestamp|security|"
"keep_crc on|off",
.tokens = {
@@ -135,7 +135,6 @@ static uint16_t vlan_id = 0x100;
static struct rte_eth_conf default_pmd_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
},
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
@@ -108,7 +108,6 @@ static struct link_bonding_unittest_params test_params = {
static struct rte_eth_conf default_pmd_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
},
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
@@ -81,7 +81,6 @@ static struct link_bonding_rssconf_unittest_params test_params = {
static struct rte_eth_conf default_pmd_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
},
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
@@ -92,7 +91,6 @@ static struct rte_eth_conf default_pmd_conf = {
static struct rte_eth_conf rss_pmd_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
},
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
@@ -62,7 +62,6 @@ static struct rte_ether_addr ports_eth_addr[RTE_MAX_ETHPORTS];
static struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
},
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
@@ -73,7 +73,6 @@ static struct rte_ether_addr ports_eth_addr[RTE_MAX_ETHPORTS];
static struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM |
RTE_ETH_RX_OFFLOAD_SECURITY,
},
@@ -63,8 +63,6 @@ vPMD. They are:
* Flow director
-* Header split
-
* RX checksum offload
Other features are supported using optional MACRO configuration. They include:
@@ -82,8 +80,6 @@ will be checked:
* ``RTE_ETH_RX_OFFLOAD_CHECKSUM``
-* ``RTE_ETH_RX_OFFLOAD_HEADER_SPLIT``
-
* ``fdir_conf->mode``
@@ -77,8 +77,6 @@ They are:
* FDIR
-* Header split
-
* RX checksum off load
Other features are supported using optional MACRO configuration. They include:
@@ -95,8 +93,6 @@ To guarantee the constraint, capabilities in dev_conf.rxmode.offloads will be ch
* RTE_ETH_RX_OFFLOAD_CHECKSUM
-* RTE_ETH_RX_OFFLOAD_HEADER_SPLIT
-
* dev_conf
fdir_conf->mode will also be checked.
@@ -92,12 +92,6 @@ Deprecation Notices
The ``rate`` parameter will be modified to ``uint32_t`` in DPDK 22.11
so that it can work for more than 64 Gbps.
-* ethdev: Since no single PMD supports ``RTE_ETH_RX_OFFLOAD_HEADER_SPLIT``
- offload and the ``split_hdr_size`` field in structure ``rte_eth_rxmode``
- to enable per-port header split, they will be removed in DPDK 22.11.
- The per-queue Rx packet split offload ``RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT``
- can still be used, and it is configured by ``rte_eth_rxseg_split``.
-
* ethdev: The flow director API, including ``rte_eth_conf.fdir_conf`` field,
and the related structures (``rte_fdir_*`` and ``rte_eth_fdir_*``),
will be removed in DPDK 20.11.
@@ -100,6 +100,11 @@ ABI Changes
Also, make sure to start the actual text at the margin.
=======================================================
+ * ethdev: Removed the Rx offload flag ``RTE_ETH_RX_OFFLOAD_HEADER_SPLIT``
+ and field ``split_hdr_size`` from the structure ``rte_eth_rxmode`` used
+ to configure header split. Instead, user can still use
+ ``RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT`` for per-queue packet split
+ offlod, which is configured by ``rte_eth_rxseg_split``.
Known Issues
------------
@@ -1626,7 +1626,7 @@ Enable or disable a per port Rx offloading on all Rx queues of a port::
* ``offloading``: can be any of these offloading capability:
vlan_strip, ipv4_cksum, udp_cksum, tcp_cksum, tcp_lro,
qinq_strip, outer_ipv4_cksum, macsec_strip,
- header_split, vlan_filter, vlan_extend, jumbo_frame,
+ vlan_filter, vlan_extend, jumbo_frame,
scatter, timestamp, security, keep_crc, rss_hash
This command should be run when the port is stopped, or else it will fail.
@@ -1641,7 +1641,7 @@ Enable or disable a per queue Rx offloading only on a specific Rx queue::
* ``offloading``: can be any of these offloading capability:
vlan_strip, ipv4_cksum, udp_cksum, tcp_cksum, tcp_lro,
qinq_strip, outer_ipv4_cksum, macsec_strip,
- header_split, vlan_filter, vlan_extend, jumbo_frame,
+ vlan_filter, vlan_extend, jumbo_frame,
scatter, timestamp, security, keep_crc
This command should be run when the port is stopped, or else it will fail.
@@ -90,7 +90,6 @@ cnxk_nix_rx_burst_mode_get(struct rte_eth_dev *eth_dev, uint16_t queue_id,
{RTE_ETH_RX_OFFLOAD_QINQ_STRIP, " QinQ VLAN Strip,"},
{RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM, " Outer IPv4 Checksum,"},
{RTE_ETH_RX_OFFLOAD_MACSEC_STRIP, " MACsec Strip,"},
- {RTE_ETH_RX_OFFLOAD_HEADER_SPLIT, " Header Split,"},
{RTE_ETH_RX_OFFLOAD_VLAN_FILTER, " VLAN Filter,"},
{RTE_ETH_RX_OFFLOAD_VLAN_EXTEND, " VLAN Extend,"},
{RTE_ETH_RX_OFFLOAD_SCATTER, " Scattered,"},
@@ -1187,7 +1187,6 @@ fs_dev_infos_get(struct rte_eth_dev *dev,
RTE_ETH_RX_OFFLOAD_QINQ_STRIP |
RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM |
RTE_ETH_RX_OFFLOAD_MACSEC_STRIP |
- RTE_ETH_RX_OFFLOAD_HEADER_SPLIT |
RTE_ETH_RX_OFFLOAD_VLAN_FILTER |
RTE_ETH_RX_OFFLOAD_VLAN_EXTEND |
RTE_ETH_RX_OFFLOAD_SCATTER |
@@ -1204,7 +1203,6 @@ fs_dev_infos_get(struct rte_eth_dev *dev,
RTE_ETH_RX_OFFLOAD_QINQ_STRIP |
RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM |
RTE_ETH_RX_OFFLOAD_MACSEC_STRIP |
- RTE_ETH_RX_OFFLOAD_HEADER_SPLIT |
RTE_ETH_RX_OFFLOAD_VLAN_FILTER |
RTE_ETH_RX_OFFLOAD_VLAN_EXTEND |
RTE_ETH_RX_OFFLOAD_SCATTER |
@@ -1779,7 +1779,6 @@ static uint64_t fm10k_get_rx_port_offloads_capa(struct rte_eth_dev *dev)
RTE_ETH_RX_OFFLOAD_IPV4_CKSUM |
RTE_ETH_RX_OFFLOAD_UDP_CKSUM |
RTE_ETH_RX_OFFLOAD_TCP_CKSUM |
- RTE_ETH_RX_OFFLOAD_HEADER_SPLIT |
RTE_ETH_RX_OFFLOAD_RSS_HASH);
}
@@ -221,10 +221,6 @@ fm10k_rx_vec_condition_check(struct rte_eth_dev *dev)
if (fconf->mode != RTE_FDIR_MODE_NONE)
return -1;
- /* no header split support */
- if (rxmode->offloads & RTE_ETH_RX_OFFLOAD_HEADER_SPLIT)
- return -1;
-
return 0;
#else
RTE_SET_USED(dev);
@@ -220,10 +220,6 @@ i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
if (fconf->mode != RTE_FDIR_MODE_NONE)
return -1;
- /* no header split support */
- if (rxmode->offloads & RTE_ETH_RX_OFFLOAD_HEADER_SPLIT)
- return -1;
-
/* no QinQ support */
if (rxmode->offloads & RTE_ETH_RX_OFFLOAD_VLAN_EXTEND)
return -1;
@@ -121,11 +121,6 @@ mvneta_dev_configure(struct rte_eth_dev *dev)
return -EINVAL;
}
- if (dev->data->dev_conf.rxmode.split_hdr_size) {
- MVNETA_LOG(INFO, "Split headers not supported");
- return -EINVAL;
- }
-
if (dev->data->dev_conf.txmode.offloads & RTE_ETH_TX_OFFLOAD_MULTI_SEGS)
priv->multiseg = 1;
@@ -490,11 +490,6 @@ mrvl_dev_configure(struct rte_eth_dev *dev)
return -EINVAL;
}
- if (dev->data->dev_conf.rxmode.split_hdr_size) {
- MRVL_LOG(INFO, "Split headers not supported");
- return -EINVAL;
- }
-
if (dev->data->dev_conf.rxmode.mtu > priv->max_mtu) {
MRVL_LOG(ERR, "MTU %u is larger than max_mtu %u\n",
dev->data->dev_conf.rxmode.mtu,
@@ -2003,11 +2003,6 @@ nicvf_dev_configure(struct rte_eth_dev *dev)
return -EINVAL;
}
- if (rxmode->split_hdr_size) {
- PMD_INIT_LOG(INFO, "Rxmode does not support split header");
- return -EINVAL;
- }
-
if (conf->dcb_capability_en) {
PMD_INIT_LOG(INFO, "DCB enable not supported");
return -EINVAL;
@@ -115,7 +115,6 @@ static struct rte_mempool *mbuf_pool;
static struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
- .split_hdr_size = 0,
},
.rx_adv_conf = {
.rss_conf = {
@@ -133,9 +133,6 @@ init_port(void)
uint16_t i;
/* Ethernet port configured with default settings. 8< */
struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.offloads =
RTE_ETH_TX_OFFLOAD_VLAN_INSERT |
@@ -147,7 +147,6 @@ static struct rte_eth_conf port_conf = {
.rxmode = {
.mtu = JUMBO_FRAME_MAX_SIZE - RTE_ETHER_HDR_LEN -
RTE_ETHER_CRC_LEN,
- .split_hdr_size = 0,
.offloads = (RTE_ETH_RX_OFFLOAD_CHECKSUM |
RTE_ETH_RX_OFFLOAD_SCATTER),
},
@@ -47,7 +47,6 @@ static struct rte_eth_conf port_conf_default = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
.mtu = 9000 - (RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN), /* Jumbo frame MTU */
- .split_hdr_size = 0, /* Header split buffer size */
},
.rx_adv_conf = {
.rss_conf = {
@@ -163,7 +163,6 @@ static struct rte_eth_conf port_conf = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
.mtu = JUMBO_FRAME_MAX_SIZE - RTE_ETHER_HDR_LEN -
RTE_ETHER_CRC_LEN,
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM,
},
.rx_adv_conf = {
@@ -234,7 +234,6 @@ struct lcore_conf lcore_conf[RTE_MAX_LCORE];
static struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM,
},
.rx_adv_conf = {
@@ -10,9 +10,6 @@ l2fwd_event_init_ports(struct l2fwd_resources *rsrc)
uint16_t nb_rxd = RTE_TEST_RX_DESC_DEFAULT;
uint16_t nb_txd = RTE_TEST_TX_DESC_DEFAULT;
struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -89,9 +89,6 @@ struct lcore_queue_conf lcore_queue_conf[RTE_MAX_LCORE];
struct rte_eth_dev_tx_buffer *tx_buffer[RTE_MAX_ETHPORTS];
static struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -78,9 +78,6 @@ struct lcore_queue_conf lcore_queue_conf[RTE_MAX_LCORE];
struct rte_eth_dev_tx_buffer *tx_buffer[RTE_MAX_ETHPORTS];
static struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -93,9 +93,6 @@ struct lcore_queue_conf lcore_queue_conf[RTE_MAX_LCORE];
static struct rte_eth_dev_tx_buffer *tx_buffer[RTE_MAX_ETHPORTS];
static struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -78,9 +78,6 @@ struct rte_eth_dev_tx_buffer *tx_buffer[RTE_MAX_ETHPORTS];
/* Global configuration stored in a static structure. 8< */
static struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -176,7 +176,6 @@ smp_port_init(uint16_t port, struct rte_mempool *mbuf_pool,
struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM,
},
.rx_adv_conf = {
@@ -90,7 +90,6 @@ static uint16_t pkt_burst = NTB_DFLT_PKT_BURST;
static struct rte_eth_conf eth_port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
},
.rx_adv_conf = {
.rss_conf = {
@@ -129,7 +129,6 @@ static struct rte_eth_conf port_conf_default = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_NONE,
.mtu = 9000 - (RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN), /* Jumbo frame MTU */
- .split_hdr_size = 0, /* Header split buffer size */
},
.rx_adv_conf = {
.rss_conf = {
@@ -52,7 +52,6 @@ static struct rte_mempool *pool = NULL;
static struct rte_eth_conf port_conf = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_RSS,
- .split_hdr_size = 0,
.offloads = RTE_ETH_RX_OFFLOAD_CHECKSUM,
},
.rx_adv_conf = {
@@ -56,9 +56,6 @@ int mp_size = NB_MBUF;
struct flow_conf qos_conf[MAX_DATA_STREAMS];
static struct rte_eth_conf port_conf = {
- .rxmode = {
- .split_hdr_size = 0,
- },
.txmode = {
.mq_mode = RTE_ETH_MQ_TX_NONE,
},
@@ -125,7 +125,6 @@ static struct vhost_queue_ops vdev_queue_ops[RTE_MAX_VHOST_DEVICE];
static struct rte_eth_conf vmdq_conf_default = {
.rxmode = {
.mq_mode = RTE_ETH_MQ_RX_VMDQ_ONLY,
- .split_hdr_size = 0,
/*
* VLAN strip is necessary for 1G NIC such as I350,
* this fixes bug of ipv4 forwarding in guest can't
@@ -92,7 +92,6 @@ static const struct {
RTE_RX_OFFLOAD_BIT2STR(QINQ_STRIP),
RTE_RX_OFFLOAD_BIT2STR(OUTER_IPV4_CKSUM),
RTE_RX_OFFLOAD_BIT2STR(MACSEC_STRIP),
- RTE_RX_OFFLOAD_BIT2STR(HEADER_SPLIT),
RTE_RX_OFFLOAD_BIT2STR(VLAN_FILTER),
RTE_RX_OFFLOAD_BIT2STR(VLAN_EXTEND),
RTE_RX_OFFLOAD_BIT2STR(SCATTER),
@@ -471,7 +471,6 @@ struct rte_eth_rxmode {
uint32_t mtu; /**< Requested MTU. */
/** Maximum allowed size of LRO aggregated packet. */
uint32_t max_lro_pkt_size;
- uint16_t split_hdr_size; /**< hdr buf size (header_split enabled).*/
/**
* Per-port Rx offloads to be set using RTE_ETH_RX_OFFLOAD_* flags.
* Only offloads set on rx_offload_capa field on rte_eth_dev_info
@@ -1617,7 +1616,6 @@ struct rte_eth_conf {
#define RTE_ETH_RX_OFFLOAD_QINQ_STRIP RTE_BIT64(5)
#define RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM RTE_BIT64(6)
#define RTE_ETH_RX_OFFLOAD_MACSEC_STRIP RTE_BIT64(7)
-#define RTE_ETH_RX_OFFLOAD_HEADER_SPLIT RTE_BIT64(8)
#define RTE_ETH_RX_OFFLOAD_VLAN_FILTER RTE_BIT64(9)
#define RTE_ETH_RX_OFFLOAD_VLAN_EXTEND RTE_BIT64(10)
#define RTE_ETH_RX_OFFLOAD_SCATTER RTE_BIT64(13)
@@ -1642,7 +1640,6 @@ struct rte_eth_conf {
#define DEV_RX_OFFLOAD_QINQ_STRIP RTE_DEPRECATED(DEV_RX_OFFLOAD_QINQ_STRIP) RTE_ETH_RX_OFFLOAD_QINQ_STRIP
#define DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM RTE_DEPRECATED(DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM) RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM
#define DEV_RX_OFFLOAD_MACSEC_STRIP RTE_DEPRECATED(DEV_RX_OFFLOAD_MACSEC_STRIP) RTE_ETH_RX_OFFLOAD_MACSEC_STRIP
-#define DEV_RX_OFFLOAD_HEADER_SPLIT RTE_DEPRECATED(DEV_RX_OFFLOAD_HEADER_SPLIT) RTE_ETH_RX_OFFLOAD_HEADER_SPLIT
#define DEV_RX_OFFLOAD_VLAN_FILTER RTE_DEPRECATED(DEV_RX_OFFLOAD_VLAN_FILTER) RTE_ETH_RX_OFFLOAD_VLAN_FILTER
#define DEV_RX_OFFLOAD_VLAN_EXTEND RTE_DEPRECATED(DEV_RX_OFFLOAD_VLAN_EXTEND) RTE_ETH_RX_OFFLOAD_VLAN_EXTEND
#define DEV_RX_OFFLOAD_SCATTER RTE_DEPRECATED(DEV_RX_OFFLOAD_SCATTER) RTE_ETH_RX_OFFLOAD_SCATTER