When the pdump application is run print a warning. Add release note about deprecation and mark the API's as deprecated.
Signed-off-by: Stephen Hemminger <step...@networkplumber.org> pdump build deprecated --- app/pdump/main.c | 3 +++ app/pdump/meson.build | 1 + app/test-pmd/meson.build | 1 + app/test/meson.build | 6 +++++- doc/guides/rel_notes/deprecation.rst | 3 +++ lib/pdump/rte_pdump.h | 12 +++++++++--- 6 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/pdump/main.c b/app/pdump/main.c index fa85859703..a4e0f4e5ae 100644 --- a/app/pdump/main.c +++ b/app/pdump/main.c @@ -986,6 +986,9 @@ main(int argc, char **argv) char mp_flag[] = "--proc-type=secondary"; char *argp[argc + 2]; + + fprintf(stderr, "%s: is deprecated use dpdk-dumpcap instead\n", argv[0]); + /* catch ctrl-c so we can cleanup on exit */ sigemptyset(&action.sa_mask); sigaction(SIGTERM, &action, NULL); diff --git a/app/pdump/meson.build b/app/pdump/meson.build index a4c7dd44e7..1fe034fcb8 100644 --- a/app/pdump/meson.build +++ b/app/pdump/meson.build @@ -11,3 +11,4 @@ sources = files('main.c') deps += ['ethdev', 'kvargs', 'pdump'] cflags += no_wvla_cflag +cflags += '-Wno-deprecated-declarations' diff --git a/app/test-pmd/meson.build b/app/test-pmd/meson.build index e67665028f..3ab8280ce7 100644 --- a/app/test-pmd/meson.build +++ b/app/test-pmd/meson.build @@ -60,6 +60,7 @@ if dpdk_conf.has('RTE_LIB_METRICS') endif if dpdk_conf.has('RTE_LIB_PDUMP') deps += 'pdump' + cflags += '-Wno-deprecated-declarations' endif if dpdk_conf.has('RTE_NET_BNXT') deps += 'net_bnxt' diff --git a/app/test/meson.build b/app/test/meson.build index 07bc00148d..45ece2179c 100644 --- a/app/test/meson.build +++ b/app/test/meson.build @@ -138,7 +138,6 @@ source_file_deps = { 'test_net_ip6.c': ['net'], 'test_pcapng.c': ['ethdev', 'net', 'pcapng', 'bus_vdev'], 'test_pdcp.c': ['eventdev', 'pdcp', 'net', 'timer', 'security'], - 'test_pdump.c': ['pdump'] + sample_packet_forward_deps, 'test_per_lcore.c': [], 'test_pflock.c': [], 'test_pie.c': ['sched'], @@ -217,6 +216,11 @@ source_file_ext_deps = { 'test_pcapng.c': ['pcap'], } +if dpdk_conf.has('RTE_LIB_PDUMP') + source_file_deps += { 'test_pdump.c': ['pdump'] + sample_packet_forward_deps, } + cflags += '-Wno-deprecated-declarations' +endif + def_lib = get_option('default_library') foreach f, f_deps : source_file_deps has_deps = true diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index e2d4125308..03a6b2712e 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -152,3 +152,6 @@ Deprecation Notices * bus/vmbus: Starting DPDK 25.11, all the vmbus API defined in ``drivers/bus/vmbus/rte_bus_vmbus.h`` will become internal to DPDK. Those API functions are used internally by DPDK core and netvsc PMD. + +* pdump: The pdump API and application have been deprecated and will + be removed in a later release. diff --git a/lib/pdump/rte_pdump.h b/lib/pdump/rte_pdump.h index 1e32d46097..bfea7c560d 100644 --- a/lib/pdump/rte_pdump.h +++ b/lib/pdump/rte_pdump.h @@ -39,6 +39,7 @@ enum { * @return * 0 on success, -1 on error */ +__rte_deprecated int rte_pdump_init(void); @@ -50,6 +51,7 @@ rte_pdump_init(void); * @return * 0 on success, -1 on error */ +__rte_deprecated int rte_pdump_uninit(void); @@ -75,7 +77,7 @@ rte_pdump_uninit(void); * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ - +__rte_deprecated int rte_pdump_enable(uint16_t port, uint16_t queue, uint32_t flags, struct rte_ring *ring, @@ -106,6 +108,7 @@ rte_pdump_enable(uint16_t port, uint16_t queue, uint32_t flags, * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ +__rte_deprecated int rte_pdump_enable_bpf(uint16_t port_id, uint16_t queue, uint32_t flags, uint32_t snaplen, @@ -129,7 +132,7 @@ rte_pdump_enable_bpf(uint16_t port_id, uint16_t queue, * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ - +__rte_deprecated int rte_pdump_disable(uint16_t port, uint16_t queue, uint32_t flags); @@ -156,7 +159,7 @@ rte_pdump_disable(uint16_t port, uint16_t queue, uint32_t flags); * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ - +__rte_deprecated int rte_pdump_enable_by_deviceid(char *device_id, uint16_t queue, uint32_t flags, @@ -189,6 +192,7 @@ rte_pdump_enable_by_deviceid(char *device_id, uint16_t queue, * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ +__rte_deprecated int rte_pdump_enable_bpf_by_deviceid(const char *device_id, uint16_t queue, uint32_t flags, uint32_t snaplen, @@ -215,6 +219,7 @@ rte_pdump_enable_bpf_by_deviceid(const char *device_id, uint16_t queue, * @return * 0 on success, -1 on error, rte_errno is set accordingly. */ +__rte_deprecated int rte_pdump_disable_by_deviceid(char *device_id, uint16_t queue, uint32_t flags); @@ -243,6 +248,7 @@ struct rte_pdump_stats { * @return * Zero if successful. -1 on error and rte_errno is set. */ +__rte_deprecated int rte_pdump_stats(uint16_t port_id, struct rte_pdump_stats *stats); -- 2.47.2