<pbhagavat...@marvell.com> writes:

> From: Pavan Nikhilesh <pbhagavat...@marvell.com>
>
> Disable packet type parsing in examples that don't use
> `rte_mbuf::packet_type` by setting ptype_mask as 0 in
> `rte_eth_dev_set_supported_ptypes`
>
> Signed-off-by: Pavan Nikhilesh <pbhagavat...@marvell.com>
> ---
>  examples/bbdev_app/main.c                  | 1 +
>  examples/bond/main.c                       | 2 ++
>  examples/distributor/Makefile              | 1 +
>  examples/distributor/main.c                | 1 +
>  examples/distributor/meson.build           | 1 +
>  examples/eventdev_pipeline/main.c          | 1 +
>  examples/eventdev_pipeline/meson.build     | 1 +
>  examples/exception_path/Makefile           | 1 +
>  examples/exception_path/main.c             | 1 +
>  examples/exception_path/meson.build        | 1 +
>  examples/flow_classify/flow_classify.c     | 1 +
>  examples/flow_filtering/Makefile           | 1 +
>  examples/flow_filtering/main.c             | 1 +
>  examples/flow_filtering/meson.build        | 1 +
>  examples/ip_pipeline/link.c                | 1 +
>  examples/ip_reassembly/Makefile            | 1 +
>  examples/ip_reassembly/main.c              | 1 +
>  examples/ip_reassembly/meson.build         | 1 +
>  examples/ipsec-secgw/ipsec-secgw.c         | 1 +
>  examples/ipv4_multicast/Makefile           | 1 +
>  examples/ipv4_multicast/main.c             | 1 +
>  examples/ipv4_multicast/meson.build        | 1 +
>  examples/kni/main.c                        | 1 +
>  examples/l2fwd-cat/Makefile                | 1 +
>  examples/l2fwd-cat/l2fwd-cat.c             | 1 +
>  examples/l2fwd-cat/meson.build             | 1 +
>  examples/l2fwd-crypto/main.c               | 1 +
>  examples/l2fwd-jobstats/Makefile           | 1 +
>  examples/l2fwd-jobstats/main.c             | 1 +
>  examples/l2fwd-jobstats/meson.build        | 1 +
>  examples/l2fwd-keepalive/Makefile          | 1 +
>  examples/l2fwd-keepalive/main.c            | 1 +
>  examples/l2fwd-keepalive/meson.build       | 1 +
>  examples/l2fwd/Makefile                    | 1 +
>  examples/l2fwd/main.c                      | 1 +
>  examples/l2fwd/meson.build                 | 1 +
>  examples/l3fwd-acl/Makefile                | 1 +
>  examples/l3fwd-acl/main.c                  | 1 +
>  examples/l3fwd-acl/meson.build             | 1 +
>  examples/l3fwd-power/main.c                | 1 +
>  examples/l3fwd-vf/Makefile                 | 1 +
>  examples/l3fwd-vf/main.c                   | 1 +
>  examples/l3fwd-vf/meson.build              | 1 +
>  examples/link_status_interrupt/Makefile    | 1 +
>  examples/link_status_interrupt/main.c      | 1 +
>  examples/link_status_interrupt/meson.build | 1 +
>  examples/load_balancer/Makefile            | 1 +
>  examples/load_balancer/init.c              | 1 +
>  examples/load_balancer/meson.build         | 1 +
>  examples/packet_ordering/Makefile          | 1 +
>  examples/packet_ordering/main.c            | 1 +
>  examples/packet_ordering/meson.build       | 1 +
>  examples/ptpclient/Makefile                | 1 +
>  examples/ptpclient/meson.build             | 1 +
>  examples/ptpclient/ptpclient.c             | 1 +
>  examples/qos_meter/Makefile                | 1 +
>  examples/qos_meter/main.c                  | 2 ++
>  examples/qos_meter/meson.build             | 1 +
>  examples/qos_sched/Makefile                | 1 +
>  examples/qos_sched/init.c                  | 1 +
>  examples/qos_sched/meson.build             | 1 +
>  examples/quota_watermark/qw/Makefile       | 1 +
>  examples/quota_watermark/qw/init.c         | 1 +
>  examples/rxtx_callbacks/main.c             | 1 +
>  examples/server_node_efd/server/Makefile   | 1 +
>  examples/server_node_efd/server/init.c     | 1 +
>  examples/skeleton/Makefile                 | 1 +
>  examples/skeleton/basicfwd.c               | 1 +
>  examples/skeleton/meson.build              | 1 +
>  examples/tep_termination/Makefile          | 1 +
>  examples/tep_termination/meson.build       | 1 +
>  examples/tep_termination/vxlan_setup.c     | 1 +
>  examples/vhost/Makefile                    | 1 +
>  examples/vhost/main.c                      | 1 +
>  examples/vm_power_manager/Makefile         | 1 +
>  examples/vm_power_manager/main.c           | 1 +
>  examples/vm_power_manager/meson.build      | 1 +
>  examples/vmdq/Makefile                     | 1 +
>  examples/vmdq/main.c                       | 1 +
>  examples/vmdq/meson.build                  | 1 +
>  examples/vmdq_dcb/Makefile                 | 1 +
>  examples/vmdq_dcb/main.c                   | 1 +
>  examples/vmdq_dcb/meson.build              | 1 +
>  83 files changed, 85 insertions(+)
>
> diff --git a/examples/bbdev_app/main.c b/examples/bbdev_app/main.c
> index 9acf666dc..a32f63187 100644
> --- a/examples/bbdev_app/main.c
> +++ b/examples/bbdev_app/main.c
> @@ -478,6 +478,7 @@ initialize_ports(struct app_config_params *app_params,
>       }
>  
>       rte_eth_promiscuous_enable(port_id);
> +     rte_eth_dev_set_supported_ptypes(port_id, RTE_PTYPE_UNKNOWN);

This is strange, since the function signature is defined (in 1/7) as:

  int rte_eth_dev_set_supported_ptypes(uint16_t port_id, uint32_t ptype_mask,
                                       uint32_t *set_ptypes, int num);

Did you mean to add more args?

>       rte_eth_macaddr_get(port_id, &bbdev_port_eth_addr);
>       print_mac(port_id, &bbdev_port_eth_addr);
> diff --git a/examples/bond/main.c b/examples/bond/main.c
> index 1c0df9d46..8beb1dc14 100644
> --- a/examples/bond/main.c
> +++ b/examples/bond/main.c
> @@ -195,6 +195,7 @@ slave_port_init(uint16_t portid, struct rte_mempool 
> *mbuf_pool)
>               rte_exit(retval, "port %u: TX queue 0 setup failed (res=%d)",
>                               portid, retval);
>  
> +     rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>       retval  = rte_eth_dev_start(portid);
>       if (retval < 0)
>               rte_exit(retval,
> @@ -271,6 +272,7 @@ bond_port_init(struct rte_mempool *mbuf_pool)
>               rte_exit(retval, "port %u: TX queue 0 setup failed (res=%d)",
>                               BOND_PORT, retval);
>  
> +     rte_eth_dev_set_supported_ptypes(BOND_PORT, RTE_PTYPE_UNKNOWN);
>       retval  = rte_eth_dev_start(BOND_PORT);
>       if (retval < 0)
>               rte_exit(retval, "Start port %d failed (res=%d)", BOND_PORT, 
> retval);
> diff --git a/examples/distributor/Makefile b/examples/distributor/Makefile
> index bac8d5578..a2a477279 100644
> --- a/examples/distributor/Makefile
> +++ b/examples/distributor/Makefile
> @@ -50,6 +50,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/distributor/main.c b/examples/distributor/main.c
> index 81d7ca61d..bc945d862 100644
> --- a/examples/distributor/main.c
> +++ b/examples/distributor/main.c
> @@ -162,6 +162,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
>               return retval;
> diff --git a/examples/distributor/meson.build 
> b/examples/distributor/meson.build
> index 26f108d65..c2976f6bd 100644
> --- a/examples/distributor/meson.build
> +++ b/examples/distributor/meson.build
> @@ -10,6 +10,7 @@
>  build = dpdk_conf.has('RTE_LIBRTE_POWER')
>  
>  deps += ['distributor', 'power']
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/eventdev_pipeline/main.c 
> b/examples/eventdev_pipeline/main.c
> index a73b61d59..9f9968cf8 100644
> --- a/examples/eventdev_pipeline/main.c
> +++ b/examples/eventdev_pipeline/main.c
> @@ -393,6 +393,7 @@ main(int argc, char **argv)
>  
>       /* Start the Ethernet port. */
>       RTE_ETH_FOREACH_DEV(portid) {
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               err = rte_eth_dev_start(portid);
>               if (err < 0)
>                       rte_exit(EXIT_FAILURE, "Error starting ethdev %d\n",
> diff --git a/examples/eventdev_pipeline/meson.build 
> b/examples/eventdev_pipeline/meson.build
> index a54c35aa7..0fc916b05 100644
> --- a/examples/eventdev_pipeline/meson.build
> +++ b/examples/eventdev_pipeline/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += 'eventdev'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c',
>       'pipeline_worker_generic.c',
> diff --git a/examples/exception_path/Makefile 
> b/examples/exception_path/Makefile
> index 90c7f133a..a7c961276 100644
> --- a/examples/exception_path/Makefile
> +++ b/examples/exception_path/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  
> diff --git a/examples/exception_path/main.c b/examples/exception_path/main.c
> index 0d79e5a24..7dbc0970a 100644
> --- a/examples/exception_path/main.c
> +++ b/examples/exception_path/main.c
> @@ -464,6 +464,7 @@ init_port(uint16_t port)
>               FATAL_ERROR("Could not setup up TX queue for port%u (%d)",
>                               port, ret);
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port);
>       if (ret < 0)
>               FATAL_ERROR("Could not start port%u (%d)", port, ret);
> diff --git a/examples/exception_path/meson.build 
> b/examples/exception_path/meson.build
> index c34e11e36..2b0a25036 100644
> --- a/examples/exception_path/meson.build
> +++ b/examples/exception_path/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/flow_classify/flow_classify.c 
> b/examples/flow_classify/flow_classify.c
> index bc7f43ea9..aa25218a3 100644
> --- a/examples/flow_classify/flow_classify.c
> +++ b/examples/flow_classify/flow_classify.c
> @@ -231,6 +231,7 @@ port_init(uint8_t port, struct rte_mempool *mbuf_pool)
>       }
>  
>       /* Start the Ethernet port. */
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
>               return retval;
> diff --git a/examples/flow_filtering/Makefile 
> b/examples/flow_filtering/Makefile
> index a63a75555..793a08fae 100644
> --- a/examples/flow_filtering/Makefile
> +++ b/examples/flow_filtering/Makefile
> @@ -49,6 +49,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  
> diff --git a/examples/flow_filtering/main.c b/examples/flow_filtering/main.c
> index a0487be77..fbd1b6cc2 100644
> --- a/examples/flow_filtering/main.c
> +++ b/examples/flow_filtering/main.c
> @@ -176,6 +176,7 @@ init_port(void)
>       }
>  
>       rte_eth_promiscuous_enable(port_id);
> +     rte_eth_dev_set_supported_ptypes(port_id, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port_id);
>       if (ret < 0) {
>               rte_exit(EXIT_FAILURE,
> diff --git a/examples/flow_filtering/meson.build 
> b/examples/flow_filtering/meson.build
> index 407795c42..6f5d1b08a 100644
> --- a/examples/flow_filtering/meson.build
> +++ b/examples/flow_filtering/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c',
>  )
> diff --git a/examples/ip_pipeline/link.c b/examples/ip_pipeline/link.c
> index 787eb866a..9f8b5b2ae 100644
> --- a/examples/ip_pipeline/link.c
> +++ b/examples/ip_pipeline/link.c
> @@ -205,6 +205,7 @@ link_create(const char *name, struct link_params *params)
>                       return NULL;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port_id, RTE_PTYPE_UNKNOWN);
>       /* Port start */
>       status = rte_eth_dev_start(port_id);
>       if (status < 0)
> diff --git a/examples/ip_reassembly/Makefile b/examples/ip_reassembly/Makefile
> index 0b1a904e0..19c462388 100644
> --- a/examples/ip_reassembly/Makefile
> +++ b/examples/ip_reassembly/Makefile
> @@ -52,6 +52,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/ip_reassembly/main.c b/examples/ip_reassembly/main.c
> index 38b39be6b..ff5407892 100644
> --- a/examples/ip_reassembly/main.c
> +++ b/examples/ip_reassembly/main.c
> @@ -1158,6 +1158,7 @@ main(int argc, char **argv)
>               if ((enabled_port_mask & (1 << portid)) == 0) {
>                       continue;
>               }
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/ip_reassembly/meson.build 
> b/examples/ip_reassembly/meson.build
> index 8ebd48291..8a667c265 100644
> --- a/examples/ip_reassembly/meson.build
> +++ b/examples/ip_reassembly/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += ['lpm', 'ip_frag']
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/ipsec-secgw/ipsec-secgw.c 
> b/examples/ipsec-secgw/ipsec-secgw.c
> index 0d1fd6af6..619d248c8 100644
> --- a/examples/ipsec-secgw/ipsec-secgw.c
> +++ b/examples/ipsec-secgw/ipsec-secgw.c
> @@ -2448,6 +2448,7 @@ main(int32_t argc, char **argv)
>               if ((enabled_port_mask & (1 << portid)) == 0)
>                       continue;
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /*
>                * Start device
>                * note: device must be started before a flow rule
> diff --git a/examples/ipv4_multicast/Makefile 
> b/examples/ipv4_multicast/Makefile
> index 5f8a67dd4..5171f7ab2 100644
> --- a/examples/ipv4_multicast/Makefile
> +++ b/examples/ipv4_multicast/Makefile
> @@ -52,6 +52,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/ipv4_multicast/main.c b/examples/ipv4_multicast/main.c
> index 72eaadc51..29b3fed9c 100644
> --- a/examples/ipv4_multicast/main.c
> +++ b/examples/ipv4_multicast/main.c
> @@ -765,6 +765,7 @@ main(int argc, char **argv)
>                       qconf->tx_queue_id[portid] = queueid;
>                       queueid++;
>               }
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               rte_eth_allmulticast_enable(portid);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
> diff --git a/examples/ipv4_multicast/meson.build 
> b/examples/ipv4_multicast/meson.build
> index d9e4c7c21..6969e2c54 100644
> --- a/examples/ipv4_multicast/meson.build
> +++ b/examples/ipv4_multicast/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += 'hash'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/kni/main.c b/examples/kni/main.c
> index 4710d7176..3163087ff 100644
> --- a/examples/kni/main.c
> +++ b/examples/kni/main.c
> @@ -625,6 +625,7 @@ init_port(uint16_t port)
>               rte_exit(EXIT_FAILURE, "Could not setup up TX queue for "
>                               "port%u (%d)\n", (unsigned)port, ret);
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port);
>       if (ret < 0)
>               rte_exit(EXIT_FAILURE, "Could not start port%u (%d)\n",
> diff --git a/examples/l2fwd-cat/Makefile b/examples/l2fwd-cat/Makefile
> index c1960d6d3..d6a25e42a 100644
> --- a/examples/l2fwd-cat/Makefile
> +++ b/examples/l2fwd-cat/Makefile
> @@ -66,6 +66,7 @@ endif
>  EXTRA_CFLAGS += -O3 -g -Wfatal-errors
>  
>  CFLAGS += -I$(PQOS_INSTALL_PATH)/../include
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  LDLIBS += -L$(PQOS_INSTALL_PATH)
>  LDLIBS += -lpqos
> diff --git a/examples/l2fwd-cat/l2fwd-cat.c b/examples/l2fwd-cat/l2fwd-cat.c
> index b34b40a00..ddd9888b1 100644
> --- a/examples/l2fwd-cat/l2fwd-cat.c
> +++ b/examples/l2fwd-cat/l2fwd-cat.c
> @@ -67,6 +67,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the Ethernet port. */
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
> diff --git a/examples/l2fwd-cat/meson.build b/examples/l2fwd-cat/meson.build
> index 4e2777a03..37c96040d 100644
> --- a/examples/l2fwd-cat/meson.build
> +++ b/examples/l2fwd-cat/meson.build
> @@ -10,6 +10,7 @@ pqos = cc.find_library('pqos', required: false)
>  build = pqos.found()
>  ext_deps += pqos
>  cflags += '-I/usr/local/include' # assume pqos lib installed in /usr/local
> +allow_experimental_apis = true
>  sources = files(
>       'cat.c', 'l2fwd-cat.c'
>  )
> diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c
> index 3fe2ba725..6aad08b06 100644
> --- a/examples/l2fwd-crypto/main.c
> +++ b/examples/l2fwd-crypto/main.c
> @@ -2559,6 +2559,7 @@ initialize_ports(struct l2fwd_crypto_options *options)
>                       return -1;
>               }
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               retval = rte_eth_dev_start(portid);
>               if (retval < 0) {
> diff --git a/examples/l2fwd-jobstats/Makefile 
> b/examples/l2fwd-jobstats/Makefile
> index 729a39e93..09834e979 100644
> --- a/examples/l2fwd-jobstats/Makefile
> +++ b/examples/l2fwd-jobstats/Makefile
> @@ -52,6 +52,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  endif
> diff --git a/examples/l2fwd-jobstats/main.c b/examples/l2fwd-jobstats/main.c
> index 77e44dc82..61ad8e759 100644
> --- a/examples/l2fwd-jobstats/main.c
> +++ b/examples/l2fwd-jobstats/main.c
> @@ -902,6 +902,7 @@ main(int argc, char **argv)
>                       "Cannot set error callback for tx buffer on port %u\n",
>                                portid);
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l2fwd-jobstats/meson.build 
> b/examples/l2fwd-jobstats/meson.build
> index 1ffd484e2..3653aa7ec 100644
> --- a/examples/l2fwd-jobstats/meson.build
> +++ b/examples/l2fwd-jobstats/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += ['jobstats', 'timer']
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/l2fwd-keepalive/Makefile 
> b/examples/l2fwd-keepalive/Makefile
> index 37de27a6f..584257ae2 100644
> --- a/examples/l2fwd-keepalive/Makefile
> +++ b/examples/l2fwd-keepalive/Makefile
> @@ -53,6 +53,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  LDFLAGS += -lrt
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
> diff --git a/examples/l2fwd-keepalive/main.c b/examples/l2fwd-keepalive/main.c
> index 9831a4323..bf662bd37 100644
> --- a/examples/l2fwd-keepalive/main.c
> +++ b/examples/l2fwd-keepalive/main.c
> @@ -696,6 +696,7 @@ main(int argc, char **argv)
>                       "Cannot set error callback for tx buffer on port %u\n",
>                                portid);
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l2fwd-keepalive/meson.build 
> b/examples/l2fwd-keepalive/meson.build
> index 6f7b007e1..2dffffaaa 100644
> --- a/examples/l2fwd-keepalive/meson.build
> +++ b/examples/l2fwd-keepalive/meson.build
> @@ -8,6 +8,7 @@
>  
>  ext_deps += cc.find_library('rt')
>  deps += 'timer'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c', 'shm.c'
>  )
> diff --git a/examples/l2fwd/Makefile b/examples/l2fwd/Makefile
> index 230352093..123e6161c 100644
> --- a/examples/l2fwd/Makefile
> +++ b/examples/l2fwd/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  endif
> diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
> index 1e2b14297..1b940038f 100644
> --- a/examples/l2fwd/main.c
> +++ b/examples/l2fwd/main.c
> @@ -694,6 +694,7 @@ main(int argc, char **argv)
>                       "Cannot set error callback for tx buffer on port %u\n",
>                                portid);
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l2fwd/meson.build b/examples/l2fwd/meson.build
> index c34e11e36..2b0a25036 100644
> --- a/examples/l2fwd/meson.build
> +++ b/examples/l2fwd/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/l3fwd-acl/Makefile b/examples/l3fwd-acl/Makefile
> index e2c989f71..df590f8e9 100644
> --- a/examples/l3fwd-acl/Makefile
> +++ b/examples/l3fwd-acl/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/l3fwd-acl/main.c b/examples/l3fwd-acl/main.c
> index 0c44df767..1a0c09c1d 100644
> --- a/examples/l3fwd-acl/main.c
> +++ b/examples/l3fwd-acl/main.c
> @@ -2056,6 +2056,7 @@ main(int argc, char **argv)
>               if ((enabled_port_mask & (1 << portid)) == 0)
>                       continue;
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l3fwd-acl/meson.build b/examples/l3fwd-acl/meson.build
> index 7096e00c1..68cebd6ce 100644
> --- a/examples/l3fwd-acl/meson.build
> +++ b/examples/l3fwd-acl/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += ['acl', 'lpm', 'hash']
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
> index fd8d9528f..136f446b3 100644
> --- a/examples/l3fwd-power/main.c
> +++ b/examples/l3fwd-power/main.c
> @@ -2426,6 +2426,7 @@ main(int argc, char **argv)
>               if ((enabled_port_mask & (1 << portid)) == 0) {
>                       continue;
>               }
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l3fwd-vf/Makefile b/examples/l3fwd-vf/Makefile
> index 7b186a23c..db7f51f2f 100644
> --- a/examples/l3fwd-vf/Makefile
> +++ b/examples/l3fwd-vf/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3 $(USER_FLAGS)
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/l3fwd-vf/main.c b/examples/l3fwd-vf/main.c
> index 572e74cf5..387d2426c 100644
> --- a/examples/l3fwd-vf/main.c
> +++ b/examples/l3fwd-vf/main.c
> @@ -1051,6 +1051,7 @@ main(int argc, char **argv)
>               if ((enabled_port_mask & (1 << portid)) == 0) {
>                       continue;
>               }
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/l3fwd-vf/meson.build b/examples/l3fwd-vf/meson.build
> index 226286e74..00f3c38f4 100644
> --- a/examples/l3fwd-vf/meson.build
> +++ b/examples/l3fwd-vf/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += ['lpm', 'hash']
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/link_status_interrupt/Makefile 
> b/examples/link_status_interrupt/Makefile
> index 97e5a14a8..6ddedd4de 100644
> --- a/examples/link_status_interrupt/Makefile
> +++ b/examples/link_status_interrupt/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  endif
> diff --git a/examples/link_status_interrupt/main.c 
> b/examples/link_status_interrupt/main.c
> index 9cd4dc7a6..abd84b862 100644
> --- a/examples/link_status_interrupt/main.c
> +++ b/examples/link_status_interrupt/main.c
> @@ -676,6 +676,7 @@ main(int argc, char **argv)
>                       rte_exit(EXIT_FAILURE, "Cannot set error callback for "
>                                       "tx buffer on port %u\n", (unsigned) 
> portid);
>  
> +             rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>               /* Start device */
>               ret = rte_eth_dev_start(portid);
>               if (ret < 0)
> diff --git a/examples/link_status_interrupt/meson.build 
> b/examples/link_status_interrupt/meson.build
> index c34e11e36..2b0a25036 100644
> --- a/examples/link_status_interrupt/meson.build
> +++ b/examples/link_status_interrupt/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/load_balancer/Makefile b/examples/load_balancer/Makefile
> index caae8a107..dcba9194c 100644
> --- a/examples/load_balancer/Makefile
> +++ b/examples/load_balancer/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3 -g
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/load_balancer/init.c b/examples/load_balancer/init.c
> index 3ab7d0211..52f677fd4 100644
> --- a/examples/load_balancer/init.c
> +++ b/examples/load_balancer/init.c
> @@ -496,6 +496,7 @@ app_init_nics(void)
>                       }
>               }
>  
> +             rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>               /* Start port */
>               ret = rte_eth_dev_start(port);
>               if (ret < 0) {
> diff --git a/examples/load_balancer/meson.build 
> b/examples/load_balancer/meson.build
> index 4f7ac3999..19708974c 100644
> --- a/examples/load_balancer/meson.build
> +++ b/examples/load_balancer/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += 'lpm'
> +allow_experimental_apis = true
>  sources = files(
>       'config.c', 'init.c', 'main.c', 'runtime.c'
>  )
> diff --git a/examples/packet_ordering/Makefile 
> b/examples/packet_ordering/Makefile
> index 51acaf7eb..9ba3fa9e8 100644
> --- a/examples/packet_ordering/Makefile
> +++ b/examples/packet_ordering/Makefile
> @@ -51,6 +51,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  endif
> diff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c
> index 030e92299..41295690d 100644
> --- a/examples/packet_ordering/main.c
> +++ b/examples/packet_ordering/main.c
> @@ -312,6 +312,7 @@ configure_eth_port(uint16_t port_id)
>                       return ret;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port_id, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port_id);
>       if (ret < 0)
>               return ret;
> diff --git a/examples/packet_ordering/meson.build 
> b/examples/packet_ordering/meson.build
> index 6c2fccdcb..a3776946f 100644
> --- a/examples/packet_ordering/meson.build
> +++ b/examples/packet_ordering/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += 'reorder'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/ptpclient/Makefile b/examples/ptpclient/Makefile
> index 89e2bacbd..f158d96b9 100644
> --- a/examples/ptpclient/Makefile
> +++ b/examples/ptpclient/Makefile
> @@ -50,6 +50,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  CFLAGS += $(WERROR_FLAGS)
>  
>  # workaround for a gcc bug with noreturn attribute
> diff --git a/examples/ptpclient/meson.build b/examples/ptpclient/meson.build
> index fa0cbe93c..d4171a218 100644
> --- a/examples/ptpclient/meson.build
> +++ b/examples/ptpclient/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'ptpclient.c'
>  )
> diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
> index 31778fd95..351596fc3 100644
> --- a/examples/ptpclient/ptpclient.c
> +++ b/examples/ptpclient/ptpclient.c
> @@ -227,6 +227,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the Ethernet port. */
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
> diff --git a/examples/qos_meter/Makefile b/examples/qos_meter/Makefile
> index e5217cf7c..a1533d08f 100644
> --- a/examples/qos_meter/Makefile
> +++ b/examples/qos_meter/Makefile
> @@ -52,6 +52,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += -O3
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  CFLAGS += $(WERROR_FLAGS)
>  
>  # workaround for a gcc bug with noreturn attribute
> diff --git a/examples/qos_meter/main.c b/examples/qos_meter/main.c
> index da7afe8be..2accbc9b6 100644
> --- a/examples/qos_meter/main.c
> +++ b/examples/qos_meter/main.c
> @@ -419,10 +419,12 @@ main(int argc, char **argv)
>  
>       rte_eth_tx_buffer_init(tx_buffer, PKT_TX_BURST_MAX);
>  
> +     rte_eth_dev_set_supported_ptypes(port_rx, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port_rx);
>       if (ret < 0)
>               rte_exit(EXIT_FAILURE, "Port %d start error (%d)\n", port_rx, 
> ret);
>  
> +     rte_eth_dev_set_supported_ptypes(port_tx, RTE_PTYPE_UNKNOWN);
>       ret = rte_eth_dev_start(port_tx);
>       if (ret < 0)
>               rte_exit(EXIT_FAILURE, "Port %d start error (%d)\n", port_tx, 
> ret);
> diff --git a/examples/qos_meter/meson.build b/examples/qos_meter/meson.build
> index ef7779f2f..10cd4bc79 100644
> --- a/examples/qos_meter/meson.build
> +++ b/examples/qos_meter/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += 'meter'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c', 'rte_policer.c'
>  )
> diff --git a/examples/qos_sched/Makefile b/examples/qos_sched/Makefile
> index ce2d25371..7d3d3019f 100644
> --- a/examples/qos_sched/Makefile
> +++ b/examples/qos_sched/Makefile
> @@ -58,6 +58,7 @@ else
>  
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  
> diff --git a/examples/qos_sched/init.c b/examples/qos_sched/init.c
> index b05206d5a..35e4c90a2 100644
> --- a/examples/qos_sched/init.c
> +++ b/examples/qos_sched/init.c
> @@ -138,6 +138,7 @@ app_init_port(uint16_t portid, struct rte_mempool *mp)
>                        "rte_eth_tx_queue_setup: err=%d, port=%u queue=%d\n",
>                        ret, portid, 0);
>  
> +     rte_eth_dev_set_supported_ptypes(portid, RTE_PTYPE_UNKNOWN);
>       /* Start device */
>       ret = rte_eth_dev_start(portid);
>       if (ret < 0)
> diff --git a/examples/qos_sched/meson.build b/examples/qos_sched/meson.build
> index 289b81ce8..5101652af 100644
> --- a/examples/qos_sched/meson.build
> +++ b/examples/qos_sched/meson.build
> @@ -7,6 +7,7 @@
>  # DPDK instance, use 'make'
>  
>  deps += ['sched', 'cfgfile']
> +allow_experimental_apis = true
>  sources = files(
>       'app_thread.c', 'args.c', 'cfg_file.c', 'cmdline.c',
>       'init.c', 'main.c', 'stats.c'
> diff --git a/examples/quota_watermark/qw/Makefile 
> b/examples/quota_watermark/qw/Makefile
> index 3f10f01c3..e06f4482b 100644
> --- a/examples/quota_watermark/qw/Makefile
> +++ b/examples/quota_watermark/qw/Makefile
> @@ -18,5 +18,6 @@ SRCS-y := args.c init.c main.c
>  
>  CFLAGS += -O3 -DQW_SOFTWARE_FC
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
> diff --git a/examples/quota_watermark/qw/init.c 
> b/examples/quota_watermark/qw/init.c
> index 5a0f64f45..098e3c16e 100644
> --- a/examples/quota_watermark/qw/init.c
> +++ b/examples/quota_watermark/qw/init.c
> @@ -96,6 +96,7 @@ void configure_eth_port(uint16_t port_id)
>                               "Failed to setup hardware flow control on port 
> %u (error %d)\n",
>                               (unsigned int) port_id, ret);
>  
> +     rte_eth_dev_set_supported_ptypes(port_id, RTE_PTYPE_UNKNOWN);
>       /* Start the port */
>       ret = rte_eth_dev_start(port_id);
>       if (ret < 0)
> diff --git a/examples/rxtx_callbacks/main.c b/examples/rxtx_callbacks/main.c
> index dbcd9f4fc..c4acac585 100644
> --- a/examples/rxtx_callbacks/main.c
> +++ b/examples/rxtx_callbacks/main.c
> @@ -152,6 +152,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       retval  = rte_eth_dev_start(port);
>       if (retval < 0)
>               return retval;
> diff --git a/examples/server_node_efd/server/Makefile 
> b/examples/server_node_efd/server/Makefile
> index 4837bd3ea..acbd12ae2 100644
> --- a/examples/server_node_efd/server/Makefile
> +++ b/examples/server_node_efd/server/Makefile
> @@ -25,5 +25,6 @@ INC := $(sort $(wildcard *.h))
>  
>  CFLAGS += $(WERROR_FLAGS) -O3
>  CFLAGS += -I$(SRCDIR)/../shared
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
> diff --git a/examples/server_node_efd/server/init.c 
> b/examples/server_node_efd/server/init.c
> index af5a18e28..b4ff9dd57 100644
> --- a/examples/server_node_efd/server/init.c
> +++ b/examples/server_node_efd/server/init.c
> @@ -149,6 +149,7 @@ init_port(uint16_t port_num)
>  
>       rte_eth_promiscuous_enable(port_num);
>  
> +     rte_eth_dev_set_supported_ptypes(port_num, RTE_PTYPE_UNKNOWN);
>       retval = rte_eth_dev_start(port_num);
>       if (retval < 0)
>               return retval;
> diff --git a/examples/skeleton/Makefile b/examples/skeleton/Makefile
> index c5ac26029..0037d6b25 100644
> --- a/examples/skeleton/Makefile
> +++ b/examples/skeleton/Makefile
> @@ -50,6 +50,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/skeleton/basicfwd.c b/examples/skeleton/basicfwd.c
> index a8a8e98f0..6c10a06ef 100644
> --- a/examples/skeleton/basicfwd.c
> +++ b/examples/skeleton/basicfwd.c
> @@ -76,6 +76,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the Ethernet port. */
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
> diff --git a/examples/skeleton/meson.build b/examples/skeleton/meson.build
> index 9bb9ec329..ef46b187e 100644
> --- a/examples/skeleton/meson.build
> +++ b/examples/skeleton/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'basicfwd.c'
>  )
> diff --git a/examples/tep_termination/Makefile 
> b/examples/tep_termination/Makefile
> index 31165bd92..586838676 100644
> --- a/examples/tep_termination/Makefile
> +++ b/examples/tep_termination/Makefile
> @@ -61,6 +61,7 @@ endif
>  CFLAGS += -O3
>  CFLAGS += $(WERROR_FLAGS)
>  CFLAGS += -Wno-deprecated-declarations
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  endif
> diff --git a/examples/tep_termination/meson.build 
> b/examples/tep_termination/meson.build
> index f65d68980..f40b1c0b8 100644
> --- a/examples/tep_termination/meson.build
> +++ b/examples/tep_termination/meson.build
> @@ -11,6 +11,7 @@ if not is_linux
>  endif
>  deps += ['hash', 'vhost']
>  cflags += '-Wno-deprecated-declarations'
> +allow_experimental_apis = true
>  sources = files(
>       'main.c', 'vxlan.c', 'vxlan_setup.c'
>  )
> diff --git a/examples/tep_termination/vxlan_setup.c 
> b/examples/tep_termination/vxlan_setup.c
> index 9a0880002..538a54b3a 100644
> --- a/examples/tep_termination/vxlan_setup.c
> +++ b/examples/tep_termination/vxlan_setup.c
> @@ -167,6 +167,7 @@ vxlan_port_init(uint16_t port, struct rte_mempool 
> *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the device. */
>       retval  = rte_eth_dev_start(port);
>       if (retval < 0)
> diff --git a/examples/vhost/Makefile b/examples/vhost/Makefile
> index f84b7f017..7722e81c7 100644
> --- a/examples/vhost/Makefile
> +++ b/examples/vhost/Makefile
> @@ -62,6 +62,7 @@ else
>  CFLAGS += -DALLOW_EXPERIMENTAL_API
>  CFLAGS += -O2 -D_FILE_OFFSET_BITS=64
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  include $(RTE_SDK)/mk/rte.extapp.mk
>  
> diff --git a/examples/vhost/main.c b/examples/vhost/main.c
> index 0961db080..57438b22c 100644
> --- a/examples/vhost/main.c
> +++ b/examples/vhost/main.c
> @@ -321,6 +321,7 @@ port_init(uint16_t port)
>               }
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the device. */
>       retval  = rte_eth_dev_start(port);
>       if (retval < 0) {
> diff --git a/examples/vm_power_manager/Makefile 
> b/examples/vm_power_manager/Makefile
> index 2fdb991d7..65c2ad179 100644
> --- a/examples/vm_power_manager/Makefile
> +++ b/examples/vm_power_manager/Makefile
> @@ -28,6 +28,7 @@ endif
>  
>  CFLAGS += -O3 -I$(RTE_SDK)/lib/librte_power/
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  LDLIBS += -lvirt
>  
> diff --git a/examples/vm_power_manager/main.c 
> b/examples/vm_power_manager/main.c
> index 54c704610..190a7a9ea 100644
> --- a/examples/vm_power_manager/main.c
> +++ b/examples/vm_power_manager/main.c
> @@ -99,6 +99,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>                       return retval;
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       /* Start the Ethernet port. */
>       retval = rte_eth_dev_start(port);
>       if (retval < 0)
> diff --git a/examples/vm_power_manager/meson.build 
> b/examples/vm_power_manager/meson.build
> index 20a4a05b3..54e2b584f 100644
> --- a/examples/vm_power_manager/meson.build
> +++ b/examples/vm_power_manager/meson.build
> @@ -25,6 +25,7 @@ if dpdk_conf.has('RTE_LIBRTE_IXGBE_PMD')
>       deps += ['pmd_ixgbe']
>  endif
>  
> +allow_experimental_apis = true
>  sources = files(
>       'channel_manager.c', 'channel_monitor.c', 'main.c', 'parse.c', 
> 'power_manager.c', 'vm_power_cli.c'
>  )
> diff --git a/examples/vmdq/Makefile b/examples/vmdq/Makefile
> index 1557ee86b..2168747cc 100644
> --- a/examples/vmdq/Makefile
> +++ b/examples/vmdq/Makefile
> @@ -50,6 +50,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  EXTRA_CFLAGS += -O3
>  
> diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c
> index 7281ffd7f..87cf230f4 100644
> --- a/examples/vmdq/main.c
> +++ b/examples/vmdq/main.c
> @@ -258,6 +258,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>               }
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       retval  = rte_eth_dev_start(port);
>       if (retval < 0) {
>               printf("port %d start failed\n", port);
> diff --git a/examples/vmdq/meson.build b/examples/vmdq/meson.build
> index c34e11e36..2b0a25036 100644
> --- a/examples/vmdq/meson.build
> +++ b/examples/vmdq/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )
> diff --git a/examples/vmdq_dcb/Makefile b/examples/vmdq_dcb/Makefile
> index 391096cfb..ea1574d91 100644
> --- a/examples/vmdq_dcb/Makefile
> +++ b/examples/vmdq_dcb/Makefile
> @@ -50,6 +50,7 @@ RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword 
> $(wildcard $(RTE_SDK)/*/.conf
>  include $(RTE_SDK)/mk/rte.vars.mk
>  
>  CFLAGS += $(WERROR_FLAGS)
> +CFLAGS += -DALLOW_EXPERIMENTAL_API
>  
>  # workaround for a gcc bug with noreturn attribute
>  # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12603
> diff --git a/examples/vmdq_dcb/main.c b/examples/vmdq_dcb/main.c
> index 389000327..bace88e47 100644
> --- a/examples/vmdq_dcb/main.c
> +++ b/examples/vmdq_dcb/main.c
> @@ -313,6 +313,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>               }
>       }
>  
> +     rte_eth_dev_set_supported_ptypes(port, RTE_PTYPE_UNKNOWN);
>       retval  = rte_eth_dev_start(port);
>       if (retval < 0) {
>               printf("port %d start failed\n", port);
> diff --git a/examples/vmdq_dcb/meson.build b/examples/vmdq_dcb/meson.build
> index c34e11e36..2b0a25036 100644
> --- a/examples/vmdq_dcb/meson.build
> +++ b/examples/vmdq_dcb/meson.build
> @@ -6,6 +6,7 @@
>  # To build this example as a standalone application with an already-installed
>  # DPDK instance, use 'make'
>  
> +allow_experimental_apis = true
>  sources = files(
>       'main.c'
>  )

Reply via email to