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 4D780A00C3; Thu, 14 May 2020 09:13:44 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 22F431D636; Thu, 14 May 2020 09:13:44 +0200 (CEST) Received: from dal3relay152.mxroute.com (dal3relay152.mxroute.com [64.40.27.152]) by dpdk.org (Postfix) with ESMTP id 9734A1D628 for ; Thu, 14 May 2020 09:13:42 +0200 (CEST) Received: from filter003.mxroute.com ([168.235.111.26] 168-235-111-26.cloud.ramnode.com) (Authenticated sender: mN4UYu2MZsgR) by dal3relay152.mxroute.com (ZoneMTA) with ESMTPSA id 172120815eb00075bf.001 for (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256); Thu, 14 May 2020 07:13:39 +0000 X-Zone-Loop: c3d1c2c4e5f013e7d3f5b8de924344358df97a24e160 X-Originating-IP: [168.235.111.26] Received: from galaxy.mxroute.com (unknown [23.92.70.113]) by filter003.mxroute.com (Postfix) with ESMTPS id 3BCEF6003E; Thu, 14 May 2020 07:13:37 +0000 (UTC) Received: from [192.198.151.44] by galaxy.mxroute.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.91) (envelope-from ) id 1jZ7cN-0007LN-3R; Thu, 14 May 2020 02:45:19 -0400 To: "Hemant Agrawal (OSS)" Cc: "dev@dpdk.org" References: <20200512140100.26803-1-hemant.agrawal@nxp.com> <20200513132745.9006-1-hemant.agrawal@nxp.com> <20200513132745.9006-2-hemant.agrawal@nxp.com> From: Ray Kinsella Autocrypt: addr=mdr@ashroe.eu; keydata= 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 Message-ID: <63aee4d4-db63-de05-2ff1-5f9ae748da80@ashroe.eu> Date: Thu, 14 May 2020 08:13:34 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-AuthUser: mdr@ashroe.eu Subject: Re: [dpdk-dev] [PATCH v3 01/12] common/dpaax: move internal symbols into INTERNAL section 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" Hi Hemant, So validate_abi.sh has been somewhat deprecated - it may be removed in future. To run the libabigail abi checks, you need to run the magic command. DPDK_ABI_REF_DIR=/build/dpdk/reference/ DPDK_ABI_REF_VERSION=v20.02 ./devtools/test-meson-builds.sh DPDK_ABI_REF_DIR - needs an absolute path, for reasons that are still unclear to me. DPDK_ABI_REF_VERSION - you need to use the last DPDK release. Thanks, Ray K On 13/05/2020 15:06, Hemant Agrawal (OSS) wrote: > Hi Ray, > I could not find validate_abi using libabigail.abignore. Am I missing something. > Though check_abi.sh uses it. > > When I am checking with validate_abi.sh, I still see warnings. > > Regards, > Hemant > >> -----Original Message----- >> From: Hemant Agrawal >> Sent: Wednesday, May 13, 2020 6:58 PM >> To: dev@dpdk.org; david.marchand@redhat.com; mdr@ashroe.eu >> Cc: Hemant Agrawal >> Subject: [PATCH v3 01/12] common/dpaax: move internal symbols into >> INTERNAL section >> >> This patch moves the internal symbols to INTERNAL sections so that any >> change in them is not reported as ABI breakage. >> >> Signed-off-by: Hemant Agrawal >> --- >> devtools/libabigail.abignore | 3 +++ >> drivers/common/dpaax/dpaa_of.h | 15 +++++++++++++++ >> drivers/common/dpaax/dpaax_iova_table.h | 4 ++++ >> drivers/common/dpaax/rte_common_dpaax_version.map | 2 +- >> 4 files changed, 23 insertions(+), 1 deletion(-) >> >> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore index >> c9ee73cb3c..b1488d5549 100644 >> --- a/devtools/libabigail.abignore >> +++ b/devtools/libabigail.abignore >> @@ -48,3 +48,6 @@ >> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END >> [suppress_variable] >> name = rte_crypto_aead_algorithm_strings >> +; Ignore moving DPAAx stable functions to INTERNAL tag [suppress_file] >> + file_name_regexp = ^librte_common_dpaax\. >> diff --git a/drivers/common/dpaax/dpaa_of.h >> b/drivers/common/dpaax/dpaa_of.h index 960b421766..38d91a1afe 100644 >> --- a/drivers/common/dpaax/dpaa_of.h >> +++ b/drivers/common/dpaax/dpaa_of.h >> @@ -24,6 +24,7 @@ >> #include >> #include >> #include >> +#include >> >> #ifndef OF_INIT_DEFAULT_PATH >> #define OF_INIT_DEFAULT_PATH "/proc/device-tree" >> @@ -102,6 +103,7 @@ struct dt_file { >> uint64_t buf[OF_FILE_BUF_MAX >> 3]; >> }; >> >> +__rte_internal >> const struct device_node *of_find_compatible_node( >> const struct device_node *from, >> const char *type __rte_unused, >> @@ -113,32 +115,44 @@ const struct device_node >> *of_find_compatible_node( >> dev_node != NULL; \ >> dev_node = of_find_compatible_node(dev_node, type, >> compatible)) >> >> +__rte_internal >> const void *of_get_property(const struct device_node *from, const char >> *name, >> size_t *lenp) __attribute__((nonnull(2))); >> +__rte_internal >> bool of_device_is_available(const struct device_node *dev_node); >> >> + >> +__rte_internal >> const struct device_node *of_find_node_by_phandle(uint64_t ph); >> >> +__rte_internal >> const struct device_node *of_get_parent(const struct device_node >> *dev_node); >> >> +__rte_internal >> const struct device_node *of_get_next_child(const struct device_node >> *dev_node, >> const struct device_node *prev); >> >> +__rte_internal >> const void *of_get_mac_address(const struct device_node *np); >> >> #define for_each_child_node(parent, child) \ >> for (child = of_get_next_child(parent, NULL); child != NULL; \ >> child = of_get_next_child(parent, child)) >> >> + >> +__rte_internal >> uint32_t of_n_addr_cells(const struct device_node *dev_node); uint32_t >> of_n_size_cells(const struct device_node *dev_node); >> >> +__rte_internal >> const uint32_t *of_get_address(const struct device_node *dev_node, size_t >> idx, >> uint64_t *size, uint32_t *flags); >> >> +__rte_internal >> uint64_t of_translate_address(const struct device_node *dev_node, >> const uint32_t *addr) __attribute__((nonnull)); >> >> +__rte_internal >> bool of_device_is_compatible(const struct device_node *dev_node, >> const char *compatible); >> >> @@ -146,6 +160,7 @@ bool of_device_is_compatible(const struct >> device_node *dev_node, >> * subsystem that is device-tree-dependent. Eg. Qman/Bman, config layers, >> etc. >> * The path should usually be "/proc/device-tree". >> */ >> +__rte_internal >> int of_init_path(const char *dt_path); >> >> /* of_finish() allows a controlled tear-down of the device-tree layer, eg. if a >> diff --git a/drivers/common/dpaax/dpaax_iova_table.h >> b/drivers/common/dpaax/dpaax_iova_table.h >> index fc3b9e7a8f..230fba8ba0 100644 >> --- a/drivers/common/dpaax/dpaax_iova_table.h >> +++ b/drivers/common/dpaax/dpaax_iova_table.h >> @@ -61,9 +61,13 @@ extern struct dpaax_iova_table *dpaax_iova_table_p; >> #define DPAAX_MEM_SPLIT_MASK_OFF (DPAAX_MEM_SPLIT - 1) /**< Offset */ >> >> /* APIs exposed */ >> +__rte_internal >> int dpaax_iova_table_populate(void); >> +__rte_internal >> void dpaax_iova_table_depopulate(void); >> +__rte_internal >> int dpaax_iova_table_update(phys_addr_t paddr, void *vaddr, size_t length); >> +__rte_internal >> void dpaax_iova_table_dump(void); >> >> static inline void *dpaax_iova_table_get_va(phys_addr_t paddr) __rte_hot; >> diff --git a/drivers/common/dpaax/rte_common_dpaax_version.map >> b/drivers/common/dpaax/rte_common_dpaax_version.map >> index f72eba761d..ad2b2b3fec 100644 >> --- a/drivers/common/dpaax/rte_common_dpaax_version.map >> +++ b/drivers/common/dpaax/rte_common_dpaax_version.map >> @@ -1,4 +1,4 @@ >> -DPDK_20.0 { >> +INTERNAL { >> global: >> >> dpaax_iova_table_depopulate; >> -- >> 2.17.1 >