From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id ECFF9A046B for ; Fri, 28 Jun 2019 21:59:04 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BD48F1B945; Fri, 28 Jun 2019 21:59:03 +0200 (CEST) Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id B05F2F64 for ; Fri, 28 Jun 2019 21:59:02 +0200 (CEST) Received: from cpe-2606-a000-111b-405a-0-0-0-162e.dyn6.twc.com ([2606:a000:111b:405a::162e] helo=localhost) by smtp.tuxdriver.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1hgx1N-0006qy-3F; Fri, 28 Jun 2019 15:59:01 -0400 Date: Fri, 28 Jun 2019 15:58:30 -0400 From: Neil Horman To: David Marchand Cc: dev@dpdk.org, aconole@redhat.com, thomas@monjalon.net Message-ID: <20190628195830.GD14635@hmswarspite.think-freely.org> References: <1561635235-22238-1-git-send-email-david.marchand@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1561635235-22238-1-git-send-email-david.marchand@redhat.com> User-Agent: Mutt/1.12.0 (2019-05-25) X-Spam-Score: -2.9 (--) X-Spam-Status: No Subject: Re: [dpdk-dev] [PATCH 0/9] experimental tags fixes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Jun 27, 2019 at 01:33:46PM +0200, David Marchand wrote: > Here is a new series on __rte_experimental tags. > > Following the build error reported by Aaron [1], I noticed that some > experimental functions could go unnoticed because of a gcc peculiarity. > > To catch those, I went and added a new check on the object files to > ensure that any experimental api flagged in the map files is really > exported as such. > > Then went with my previous idea of only adding the tags on the functions > prototypes and enforcing it (a new check in checkpatches.sh). > And finally enforcing that the __rte_experimental tag is always the first > part of a function prototype which seems to work with both gcc and clang. > > Comments and reviews highly welcome :-). > > [1]: http://mails.dpdk.org/archives/dev/2019-June/135365.html > > -- > David Marchand > > David Marchand (9): > eal: hide internal hotplug symbol > devargs: remove incorrect experimental tags > vfio: remove incorrect experimental tag > raw/dpaa2_qdma: remove incorrect experimental tag > buildtools: detect discrepancies for experimental symbols > net/atlantic: add missing experimental api tags > mem: remove incorrect experimental tag on static symbol > remove experimental tags from all symbol definitions > enforce __rte_experimental at the start of symbol declarations > > buildtools/check-experimental-syms.sh | 29 ++++++--- > buildtools/map-list-symbol.sh | 70 ++++++++++++++++++++++ > devtools/checkpatches.sh | 37 ++++++++++++ > doc/guides/contributing/versioning.rst | 6 +- > drivers/net/atlantic/rte_pmd_atlantic.c | 12 ++-- > drivers/net/atlantic/rte_pmd_atlantic.h | 24 ++++++++ > drivers/net/dpaa2/dpaa2_ethdev.c | 2 +- > drivers/net/ixgbe/rte_pmd_ixgbe.c | 10 ++-- > drivers/net/ixgbe/rte_pmd_ixgbe.h | 10 ++-- > drivers/net/softnic/rte_eth_softnic.h | 2 +- > drivers/raw/dpaa2_qdma/rte_pmd_dpaa2_qdma.h | 2 +- > lib/librte_bbdev/rte_bbdev.c | 52 ++++++++-------- > lib/librte_bbdev/rte_bbdev.h | 48 +++++++-------- > lib/librte_bbdev/rte_bbdev_op.h | 12 ++-- > lib/librte_bbdev/rte_bbdev_pmd.h | 8 +-- > lib/librte_bpf/bpf.c | 4 +- > lib/librte_bpf/bpf_exec.c | 4 +- > lib/librte_bpf/bpf_load.c | 4 +- > lib/librte_bpf/bpf_load_elf.c | 2 +- > lib/librte_bpf/bpf_pkt.c | 8 +-- > lib/librte_bpf/rte_bpf.h | 12 ++-- > lib/librte_bpf/rte_bpf_ethdev.h | 8 +-- > lib/librte_compressdev/rte_comp.c | 12 ++-- > lib/librte_compressdev/rte_comp.h | 12 ++-- > lib/librte_compressdev/rte_compressdev.c | 50 ++++++++-------- > lib/librte_compressdev/rte_compressdev.h | 44 +++++++------- > lib/librte_compressdev/rte_compressdev_pmd.c | 6 +- > lib/librte_compressdev/rte_compressdev_pmd.h | 12 ++-- > lib/librte_cryptodev/rte_cryptodev.c | 28 ++++----- > lib/librte_cryptodev/rte_cryptodev.h | 28 ++++----- > lib/librte_eal/common/eal_common_class.c | 6 +- > lib/librte_eal/common/eal_common_dev.c | 8 +-- > lib/librte_eal/common/eal_common_fbarray.c | 52 ++++++++-------- > lib/librte_eal/common/eal_common_log.c | 2 +- > lib/librte_eal/common/eal_common_memory.c | 50 ++++++++-------- > lib/librte_eal/common/eal_common_proc.c | 12 ++-- > lib/librte_eal/common/eal_common_timer.c | 2 +- > lib/librte_eal/common/hotplug_mp.c | 2 +- > lib/librte_eal/common/hotplug_mp.h | 9 +++ > .../common/include/arch/x86/rte_atomic_64.h | 2 +- > lib/librte_eal/common/include/generic/rte_atomic.h | 2 +- > lib/librte_eal/common/include/generic/rte_cycles.h | 2 +- > lib/librte_eal/common/include/generic/rte_rwlock.h | 4 +- > .../common/include/generic/rte_ticketlock.h | 18 +++--- > lib/librte_eal/common/include/rte_dev.h | 18 +++--- > lib/librte_eal/common/include/rte_devargs.h | 2 - > lib/librte_eal/common/include/rte_eal.h | 21 ++----- > lib/librte_eal/common/include/rte_fbarray.h | 52 ++++++++-------- > lib/librte_eal/common/include/rte_interrupts.h | 2 +- > lib/librte_eal/common/include/rte_malloc.h | 20 +++---- > lib/librte_eal/common/include/rte_memory.h | 42 ++++++------- > lib/librte_eal/common/include/rte_service.h | 6 +- > lib/librte_eal/common/rte_malloc.c | 2 +- > lib/librte_eal/common/rte_option.c | 1 - > lib/librte_eal/common/rte_service.c | 6 +- > lib/librte_eal/freebsd/eal/eal.c | 2 +- > lib/librte_eal/freebsd/eal/eal_dev.c | 8 +-- > lib/librte_eal/freebsd/eal/eal_interrupts.c | 2 +- > lib/librte_eal/linux/eal/eal.c | 3 +- > lib/librte_eal/linux/eal/eal_dev.c | 8 +-- > lib/librte_eal/linux/eal/eal_interrupts.c | 2 +- > lib/librte_eal/linux/eal/eal_vfio.c | 2 +- > lib/librte_ethdev/rte_ethdev.c | 28 ++++----- > lib/librte_ethdev/rte_ethdev.h | 24 ++++---- > lib/librte_ethdev/rte_ethdev_driver.h | 10 ++-- > lib/librte_ethdev/rte_flow.c | 2 +- > lib/librte_ethdev/rte_flow_driver.h | 2 +- > lib/librte_ethdev/rte_mtr.c | 24 ++++---- > lib/librte_ethdev/rte_mtr.h | 24 ++++---- > lib/librte_eventdev/rte_event_eth_rx_adapter.c | 4 +- > lib/librte_eventdev/rte_event_eth_rx_adapter.h | 4 +- > lib/librte_flow_classify/rte_flow_classify.c | 14 ++--- > lib/librte_flow_classify/rte_flow_classify.h | 14 ++--- > lib/librte_hash/rte_cuckoo_hash.c | 2 +- > lib/librte_hash/rte_hash.h | 2 +- > lib/librte_ip_frag/rte_ip_frag.h | 2 +- > lib/librte_ip_frag/rte_ip_frag_common.c | 2 +- > lib/librte_ipsec/rte_ipsec.h | 6 +- > lib/librte_ipsec/rte_ipsec_group.h | 4 +- > lib/librte_ipsec/rte_ipsec_sa.h | 8 +-- > lib/librte_ipsec/sa.c | 8 +-- > lib/librte_ipsec/ses.c | 2 +- > lib/librte_kni/rte_kni.c | 2 +- > lib/librte_kni/rte_kni.h | 2 +- > lib/librte_kvargs/rte_kvargs.c | 2 - > lib/librte_mbuf/rte_mbuf.c | 1 - > lib/librte_mbuf/rte_mbuf.h | 15 +++-- > lib/librte_meter/rte_meter.c | 4 +- > lib/librte_meter/rte_meter.h | 12 ++-- > lib/librte_net/rte_arp.c | 2 +- > lib/librte_net/rte_arp.h | 2 +- > lib/librte_net/rte_net.c | 2 +- > lib/librte_net/rte_net.h | 2 +- > lib/librte_pipeline/rte_port_in_action.h | 16 ++--- > lib/librte_pipeline/rte_table_action.h | 32 +++++----- > lib/librte_power/rte_power_empty_poll.c | 14 ++--- > lib/librte_power/rte_power_empty_poll.h | 14 ++--- > lib/librte_rcu/rte_rcu_qsbr.c | 12 ++-- > lib/librte_rcu/rte_rcu_qsbr.h | 26 ++++---- > lib/librte_sched/rte_sched.c | 2 +- > lib/librte_sched/rte_sched.h | 2 +- > lib/librte_security/rte_security.c | 6 +- > lib/librte_security/rte_security.h | 6 +- > lib/librte_stack/rte_stack.h | 14 ++--- > lib/librte_stack/rte_stack_lf.h | 4 +- > lib/librte_stack/rte_stack_std.h | 6 +- > lib/librte_table/rte_table_hash_func.h | 18 +++--- > lib/librte_telemetry/rte_telemetry.c | 6 +- > lib/librte_telemetry/rte_telemetry.h | 6 +- > lib/librte_telemetry/rte_telemetry_parser.c | 2 +- > lib/librte_telemetry/rte_telemetry_parser.h | 2 +- > lib/librte_timer/rte_timer.c | 16 ++--- > lib/librte_timer/rte_timer.h | 16 ++--- > lib/librte_vhost/rte_vdpa.h | 14 ++--- > lib/librte_vhost/rte_vhost.h | 22 +++---- > lib/librte_vhost/rte_vhost_crypto.h | 10 ++-- > lib/librte_vhost/vdpa.c | 2 +- > lib/librte_vhost/vhost_crypto.c | 10 ++-- > 118 files changed, 791 insertions(+), 647 deletions(-) > create mode 100755 buildtools/map-list-symbol.sh > > -- > 1.8.3.1 > > With the fix for rte_telemetry_parse Series Acked-by: Neil Horman