From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B5445A034C; Fri, 25 Feb 2022 20:14:00 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8367B4113D; Fri, 25 Feb 2022 20:14:00 +0100 (CET) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id AD676410FD for ; Fri, 25 Feb 2022 20:13:58 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645816438; x=1677352438; h=message-id:date:to:cc:references:from:subject: in-reply-to:content-transfer-encoding:mime-version; bh=DyuacNWQXCJUkBqPwdaSISf8bmFdR9h6UNJmGz11oCc=; b=Sd0gXtTHU132tNKGKw3Z+M/OeyssD35xWzfLSZ0HUaijJn4cF/6Cdedb zm1vjK/3NpOty4GQyB7KEgCMef3FV79B+etMic0UlkRZ/VI7D0ILFVNsW UCSbptvDM33JZ3JcXVJvRJ4wWXFxToLHcfuRIAQcLLMhUOdR1Y13e54/+ ENgNK44q5pT2ymEb4gqGrWgnja+Ops8a4v1WWr39zCAC/BC6KYjEtMbao cX5zTSiweaxBQTUrBCdUa5f2QRaJsJnMdchmYCsIqVg7Xq3hS6YX9AxS5 RbYZ6MLpE1L2lSH/iEEj+fizctBCM+JmK5Z0lbWLrI3gd7RCLtMR2pfJh A==; X-IronPort-AV: E=McAfee;i="6200,9189,10268"; a="252484975" X-IronPort-AV: E=Sophos;i="5.90,137,1643702400"; d="scan'208";a="252484975" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Feb 2022 11:13:57 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,137,1643702400"; d="scan'208";a="574690539" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga001.jf.intel.com with ESMTP; 25 Feb 2022 11:13:57 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Fri, 25 Feb 2022 11:13:57 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21 via Frontend Transport; Fri, 25 Feb 2022 11:13:57 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.176) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Fri, 25 Feb 2022 11:13:56 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JtQJSKq9ZfTxSimAhZ49WlGDFY0lJTHbH4v3MC6VWXm7aXITFxtDjcEoxy8n0+b2FecnQDjcs1aiWdhIBCPy5yqeH3gZKjgDvEI4eY6DCfr+OVtvWG1lQFAKIIAUsV/Mk8GUyfDWV/YWngRwHJDy/uyQkQnP5r322grUWEei94WuRmXhGJex1BNG6AG6Anx2Kc0VtubXFFttRMLo/RXFutXCOvJDmOHLH3fq0eyjezRUM/DJ3gDB9b/o8vI9IJiA6cdyvkQu/HElO+SizJBACmOGVVe/ZC/A8ECh3aH1bSZHRSLS2d1o+pzITj8UaWk6U32fib0rj4F8sjEP7AkM+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6yR1m70UwM0qAaRIu7WS8FghLtY0zvGrizFo1UJiubc=; b=HSLvX9ehSXtQGzWws/QsOgTUkH2RuYLEl4vgsV/q8iAF+crUngjYQAnZexrJc8B3fava1eOpxFoKtsdSESReQm4pp8U3L3dzhTY2BNotRHbUW7JqPe5lGl35xEmiXu7sXXjVpWuYyo40UGvSrBXWLsNCz3vBbL07BzbD0cT7SnZ7qmVW9+zOSuIDWef2Ur/+Ze5L8BqJ6NiyEAMch3vfca0W7tzmqJd7IBhyFO3bhJ5N9g4LPbMYciklyutJpP0f4iVAL3nNPq47y33lTTN+W7xTY+RPOAqtjZac3tuAu2OfYC7Aw020jrmw9gHyyhoHAxwFejgmwKZ88roT98tKyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from PH0PR11MB5000.namprd11.prod.outlook.com (2603:10b6:510:41::19) by SA0PR11MB4559.namprd11.prod.outlook.com (2603:10b6:806:9a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5017.22; Fri, 25 Feb 2022 19:13:55 +0000 Received: from PH0PR11MB5000.namprd11.prod.outlook.com ([fe80::bd21:6fbe:8308:2ecf]) by PH0PR11MB5000.namprd11.prod.outlook.com ([fe80::bd21:6fbe:8308:2ecf%5]) with mapi id 15.20.5017.024; Fri, 25 Feb 2022 19:13:54 +0000 Message-ID: Date: Fri, 25 Feb 2022 19:13:48 +0000 Content-Language: en-US To: Thomas Monjalon CC: Michael Baum , , Matan Azrad , Raslan Darawsheh , "Viacheslav Ovsiienko" , David Marchand , Ray Kinsella References: <20220223184835.3061161-1-michaelba@nvidia.com> <20220224232511.3238707-2-michaelba@nvidia.com> <3402514.V25eIC5XRa@thomas> From: Ferruh Yigit Subject: Re: [PATCH v3 1/6] common/mlx5: consider local functions as internal X-User: ferruhy In-Reply-To: <3402514.V25eIC5XRa@thomas> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LNXP265CA0062.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5d::26) To PH0PR11MB5000.namprd11.prod.outlook.com (2603:10b6:510:41::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 77b896da-7674-4227-1274-08d9f892f73c X-MS-TrafficTypeDiagnostic: SA0PR11MB4559:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ef2PrnYkxtUR334pJg6RsZsBNrJSYhE84gTzwjjUN4czMDqFSZkiWJxi30hRDWfvKEApnP/xCvrHsVpoQIZOcfODChBUGjG7r0g/4SI8sJNGZF88ly8ul/P6Q5I2BL+nlFqFWQseLDbwa16fUWvfUxf4rdTyP+DUPnI2O2UvwNBjxUFq0eVSlON5+s4EQFTYOn7N++QDkQA2Cx0W3SNoyWvLzGpcwT3l/PKeO2oX5Eo5bpt3aVh1G7SdoliZpt/ZlzIWkVduKo98odJfLoxfLoi3csvXwqbuHlJQj42NmFwxrzNurAHx2gSH6Cn5ANlajR5y6pRyWdnT2D/HjV09l/x2yOlJeG8Y1Ll+bdeizHIq+Qee+m6v/BC2qZ66l7EmreSLMzN0F3oByqNm59E4tzmJX/A9f3LilGmU7CL5MGSU3C89Gp3NTAMiujlsBVMwcrEN0PB6PHYwLzmE6/EqVZDQvjg0i1sM0GqwxulwN2azqe5EqlQtT+x75616sOlHsgq9w4ivAn4E3LMWb5mWnMRjdR+JXwj+IaJc8ShIcW88uQjxWHF6zYvHfIV+YsrFNUq6puwDosio/ESEvXUppZGiMhBD/QrlQXtz/QGKAAKxjGBYE53JvbWlJTWr+CyWUntiYFnG2u16FHzNfq/6fmNTnkvhumfLwQOir9stOI71B+n4HyV5HsLLXRlZTnPieqH5MlQcuu0bBfzIV8Ip5w== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR11MB5000.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(53546011)(8936002)(6506007)(508600001)(316002)(36756003)(6512007)(54906003)(6916009)(6486002)(6666004)(66476007)(66556008)(66946007)(44832011)(8676002)(5660300002)(4326008)(2616005)(31696002)(26005)(186003)(82960400001)(38100700002)(31686004)(86362001)(83380400001)(2906002)(45980500001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S0NEZFE5NUFVVUY0MENVLzU5WVV0TGgvT2NpVDVKaHk2cmM0S09LNXhPemRS?= =?utf-8?B?OTBJTjdyMkd1MUlDT3NUb0s1d3gvSVBFcTRybzJWSWJuZmtrVU1jK3BmK1do?= =?utf-8?B?Y3Nsdjl5eldLZlF3MWREQ3VLdWQzV0NmcUlvb0dSRElrTCttakhRQ2NRTjJ6?= =?utf-8?B?UVArWHBWSDVkcjBuWUllVXkyV293ejJvSUM1Y3lSa1RDd1UyMHVNZTdvSGU5?= =?utf-8?B?a3Zod1RVNTFwUGpvUEZVYU1mVmU3YTJSRWJtMk1PSjR5Q1ZPL1NualBwSGNq?= =?utf-8?B?OGlsL2duUVFrajZSSWx1L2Q4YlhnUG4wRWNJbXZBRjlnR2Z5TlV6UDk5bzF1?= =?utf-8?B?VmFXSHVTbFJXSW9STWFlVDd6eVRrYWRLRitaZE5zYjBMSm4wM2cyaG9xZkxj?= =?utf-8?B?d2wvcHE4dHFRblBZZlEyRWQ5NSt2SHZTK1hsbXo1VXhzVkVtd1U3SmJDZjlN?= =?utf-8?B?d241dmpOK05qV05NcTVvdGhKSk1xdWN1SkdXemFNUURGSG16c3NKaE9oSmRk?= =?utf-8?B?dThidTAzY0ZJQmdadTJvRXQ0MnVrMS84L2J3K0xiKzRFUFNJZXVMQWNGTTNi?= =?utf-8?B?YkRMenVjbk4rbG9lMVFjMDBnbDhzcW41NFBmbjV3Zm9QZ1pjemxaTzZodzlM?= =?utf-8?B?d3hwRkoxbUlRY3plY2s5Q3p4clo0VVRpTWh5MUdTTXZBS3dSNmN0MUF5dm5n?= =?utf-8?B?RXJ5ZTk4dVZCOE5zdFpKc1lFaGoxbk9CMVQ0VFhLOVFUbm53VkpBUmtYczcw?= =?utf-8?B?MzEvWDFIOUFETlFnekxHNEJ2WW15cTczSmY5MWVPLzNzemZWWFVRenJFbkp0?= =?utf-8?B?MktJUG9JM1ZyS0laUmxENG9zbkp3cGhYWFJLcU5HemJWUWVpWlRvUEtwYWcx?= =?utf-8?B?L2dhREtFTlFublZDeVllekJPcHlXQlZ3Wkc3K0dpOXkvbzVJRDE3YmZzMUJ6?= =?utf-8?B?RUZNSEZHTGE5aG4zUmJxUG04Y1pxY0RaNWYwOGUwajVUVVE4Qy9CRFlsTllo?= =?utf-8?B?V3JkdTBPRTNMUnpQSnRMWDZWekdHUkE1U1ZLclBPMjRBVDhqbjdjay9wYTRL?= =?utf-8?B?MkVsNjBxTGNjWDdMVkh1M2hzTFYreVU1M3ZYbVFiSkkrQ0JhNE1xYm1uclNR?= =?utf-8?B?SkJoOHJLbTNnaWJPT2NjSGVHUVhBOFpPVDM2Sjlya0x5UmVCQzZZbEEvNnJW?= =?utf-8?B?L3NOWVJRUkQ3VTR5WTRQTVNWVFlLWGhxYlpYWkdJbFk3eEpoZVZCbjQra0Er?= =?utf-8?B?VkRiNExiQmNxYnBzRk1XOTVrTm4vYUJvUyszOVNjZDFlWnFaTVg4ZTBaZUxw?= =?utf-8?B?eWRXeStqTHNLSEo5T3JkU0EyOFVVcWVpRG83YzA1SDVNV3pob1l5RUdUQ1lT?= =?utf-8?B?OWR2bWxOM2FRNnBBWVVIUFVrYythamZsMGlFdVBWenRvd21CZzRhUzdlNWQy?= =?utf-8?B?UzRqYnQvOVVjVjIxRStOdWEzbmMvSE83c2V3SjBCUFMzMGk5RGxZS0hUa0VG?= =?utf-8?B?V2RhcG8xNHJ0WDRRQ1NuaFRGTWNwWlV5a1dLbTFDTHFPZXhDckdabjVHdWRx?= =?utf-8?B?ck5LQ1RoTE0xNTV6R3lTM1lqUUdtYzlqLzdqc3c1bXR2S0twaFE0UURsc0l3?= =?utf-8?B?L3o4Y2tsZi9nQ1o1a2lBVndudG1lZmxveXR6Wmh5TWJHek5YQ3NKU0pxSjdO?= =?utf-8?B?cXhzVUZJQzBjSzVDYXMxWjNGOGgvZWlYYngwV1JjRk1ET0k5bUoxa1o2amhB?= =?utf-8?B?RW9lSXQ4d1plc3J4QmJIcmZyaEZuUnFOZjZ5QStSbmlEdEhJRG9iSGVkMmpG?= =?utf-8?B?eFJ3Uy9CcVZYb0szTzNiOEphQ0Q3KzZ0Q0hvMmdxYWNndUlydW9LZ01SL3ZY?= =?utf-8?B?cDEzWUVlM1JldDRGd3hkcVg1R1JCMHUvOXNPL3g3MEpVMWVQbWFDUTJEYUl4?= =?utf-8?B?MmROTlNFRUxvendFNGE5N093U0l0cGhQWVYzaDgyVWNOYlhKYWxkWitTdmR2?= =?utf-8?B?amhnUmtLc1EwZGdZMjBnK2hiNHo1eWM0Wld5ZkhXK2ZSWFAydXZzTzBTY1Ir?= =?utf-8?B?SUNERWRPeTczTGxHb0hDVFFRL0h3cW8wa0ZCd3JSNnpWREtYa0xPU1BFdVdP?= =?utf-8?B?bHJyblhEbjlSQk1ETUZlTnNTWEl0Ulk4UXJYTUQwZ0psUjFKcmhRdWhSWk1C?= =?utf-8?Q?lMiE7GhvOkOqydNopyUtvRE=3D?= X-MS-Exchange-CrossTenant-Network-Message-Id: 77b896da-7674-4227-1274-08d9f892f73c X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5000.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Feb 2022 19:13:54.8958 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nbuslSABIp+nmeY9SRQ47JLcJA7+dGoLVqEVAOXClxkbWuBCZ7F9j6X21MfQ/KMsdCByFF/CZTG27gpB0+AMyw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR11MB4559 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 2/25/2022 6:38 PM, Thomas Monjalon wrote: > 25/02/2022 19:01, Ferruh Yigit: >> On 2/24/2022 11:25 PM, Michael Baum wrote: >>> The functions which are not explicitly marked as internal >>> were exported because the local catch-all rule was missing in the >>> version script. >>> After adding the missing rule, all local functions are hidden. >>> The function mlx5_get_device_guid is used in another library, >>> so it needs to be exported (as internal). >>> >>> Because the local functions were exported as non-internal >>> in DPDK 21.11, any change in these functions would break the ABI. >>> An ABI exception is added for this library, considering that all >>> functions are either local or internal. >>> >> >> When a function is not listed explicitly in .map file, it shouldn't >> be exported at all. > > It seems we need local:* to achieve this behaviour. > Few other libs are missing it. I plan to send a patch for them. > +1 for this patch, thanks. >> So I am not sure if this exception is required, did you get >> warning for tool, or is this theoretical? > > It is not theoritical, you can check with objdump: > objdump -T build/lib/librte_common_mlx5.so | sed -rn 's,^[[:xdigit:]]* g *(D[^0]*)[^ ]* *,\1,p' > > I did not check the ABI tool without the exception. > Yes tool complains with change [1], I will proceed with original patch. [1] 29 Removed functions: [D] 'function int mlx5_auxiliary_get_pci_str(const rte_auxiliary_device*, char*, size_t)' {mlx5_auxiliary_get_pci_str} [D] 'function void mlx5_common_auxiliary_init()' {mlx5_common_auxiliary_init} [D] 'function int mlx5_common_dev_dma_map(rte_device*, void*, uint64_t, size_t)' {mlx5_common_dev_dma_map} [D] 'function int mlx5_common_dev_dma_unmap(rte_device*, void*, uint64_t, size_t)' {mlx5_common_dev_dma_unmap} [D] 'function int mlx5_common_dev_probe(rte_device*)' {mlx5_common_dev_probe} [D] 'function int mlx5_common_dev_remove(rte_device*)' {mlx5_common_dev_remove} [D] 'function void mlx5_common_driver_on_register_pci(mlx5_class_driver*)' {mlx5_common_driver_on_register_pci} [D] 'function void mlx5_common_pci_init()' {mlx5_common_pci_init} [D] 'function mlx5_mr* mlx5_create_mr_ext(void*, uintptr_t, size_t, int, mlx5_reg_mr_t)' {mlx5_create_mr_ext} [D] 'function bool mlx5_dev_pci_match(const mlx5_class_driver*, const rte_device*)' {mlx5_dev_pci_match} [D] 'function int mlx5_dev_to_pci_str(const rte_device*, char*, size_t)' {mlx5_dev_to_pci_str} [D] 'function void mlx5_free_mr_by_addr(mlx5_mr_share_cache*, const char*, void*, size_t)' {mlx5_free_mr_by_addr} [D] 'function ibv_device* mlx5_get_aux_ibv_device(const rte_auxiliary_device*)' {mlx5_get_aux_ibv_device} [D] 'function void mlx5_glue_constructor()' {mlx5_glue_constructor} [D] 'function void mlx5_malloc_mem_select(uint32_t)' {mlx5_malloc_mem_select} [D] 'function void mlx5_mr_btree_dump(mlx5_mr_btree*)' {mlx5_mr_btree_dump} [D] 'function int mlx5_mr_create_cache(mlx5_mr_share_cache*, int)' {mlx5_mr_create_cache} [D] 'function void mlx5_mr_free(mlx5_mr*, mlx5_dereg_mr_t)' {mlx5_mr_free} [D] 'function int mlx5_mr_insert_cache(mlx5_mr_share_cache*, mlx5_mr*)' {mlx5_mr_insert_cache} [D] 'function mlx5_mr* mlx5_mr_lookup_list(mlx5_mr_share_cache*, mr_cache_entry*, uintptr_t)' {mlx5_mr_lookup_list} [D] 'function void mlx5_mr_rebuild_cache(mlx5_mr_share_cache*)' {mlx5_mr_rebuild_cache} [D] 'function void mlx5_mr_release_cache(mlx5_mr_share_cache*)' {mlx5_mr_release_cache} [D] 'function int mlx5_nl_devlink_family_id_get(int)' {mlx5_nl_devlink_family_id_get} [D] 'function int mlx5_nl_enable_roce_get(int, int, const char*, int*)' {mlx5_nl_enable_roce_get} [D] 'function int mlx5_nl_enable_roce_set(int, int, const char*, int)' {mlx5_nl_enable_roce_set} [D] 'function int mlx5_os_open_device(mlx5_common_device*, uint32_t)' {mlx5_os_open_device} [D] 'function int mlx5_os_pd_create(mlx5_common_device*)' {mlx5_os_pd_create} [D] 'function void mlx5_os_set_reg_mr_cb(mlx5_reg_mr_t*, mlx5_dereg_mr_t*)' {mlx5_os_set_reg_mr_cb} [D] 'function void mlx5_set_context_attr(rte_device*, ibv_context*)' {mlx5_set_context_attr} 2 Removed variables: [D] 'uint32_t atomic_sn' {atomic_sn} [D] 'int mlx5_common_logtype' {mlx5_common_logtype} 1 Removed function symbol not referenced by debug info: [D] mlx5_mr_dump_cache