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 AC687A0547; Mon, 19 Jul 2021 18:42:23 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2FE0740E28; Mon, 19 Jul 2021 18:42:23 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 26D034068B for ; Mon, 19 Jul 2021 18:42:20 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10050"; a="211089045" X-IronPort-AV: E=Sophos;i="5.84,252,1620716400"; d="scan'208";a="211089045" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Jul 2021 09:42:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,252,1620716400"; d="scan'208";a="468651117" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga008.fm.intel.com with ESMTP; 19 Jul 2021 09:42:19 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 19 Jul 2021 09:42:17 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Mon, 19 Jul 2021 09:42:17 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.173) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.10; Mon, 19 Jul 2021 09:42:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IYIMyff6ZhwsjE1VpvE1Id/uqEwl4B6gcBm3mQCMndUinROrdBD/Rzb24xShzbP3ocs66/Z8XrtXqyG/wZuPiC8XxApV06/fsCPRDpmupdi/vUbLMSstF7MxYFu7R6HGas4bQnlvNlK3qshz96n7omymEJOFlyFrh8eEAmM8BUMZHS3CoT/GIYXYj0I8Ipr067bHi0s2U+qgQBpZ0/1NRRcZJzDcgag1d1TI83eoupwpLG4ES+ElEKAX08JD56+QslM/DF4XctGqj99hkQHe6dLnBEeQERSb0AZY3Y7epZ3LZsV3XfbByVIEzzYQrMhZOkp7r9vKa4AogntUzjV3oQ== 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-SenderADCheck; bh=1SsTog+Ynv6u2eKz8ixGQqPt85RrsYanajHLMYlZPXo=; b=RY+oPJuRyfRB49CPUdaTcJdFMGjoHAhy9S9LQ0CevzmCwnHsdEBaHYn+1+eDwrqiQhCMZxzzZUqyvIC/1OzddDn1Vj4bgNjy737C/vnHRoxXBLTWX5dqNgxLj8/qjBxaBHSaRuKpcSP470rMPxEKxf9bSw/VwaL8oLhv7VQjHuNfxkVZ6VDX2Iwgw+NqikJuDO8IMfiBJNTQSzGPL40iPNY0tPsTPQwm26YcAke955K8Te7VW0/rmpjK/AGb9/VFSIC9uicGBNS+y90FEjTK07JEMzG4rUQxFCYdNZjCMvpuPdH5Vgxj016rktn74OIsUFXCVC6Y6qyYI5R7UrtEag== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1SsTog+Ynv6u2eKz8ixGQqPt85RrsYanajHLMYlZPXo=; b=ouFb30PCgrDFOEWALLsB06hzFvV+qTeyiiFi/JNWGpHfUtO5P7MyFH/ZISJY1nCxaPn93Cf23uLLzYFbkyg+bsExB4Nx3b7lg2uCaJSGuQFeLibsFZBjizjOI9j1+O6zeXOhVF2QcM9+s2BMchASQFP88mqLFZj//qNUvqSQaCU= Authentication-Results: oktetlabs.ru; dkim=none (message not signed) header.d=none;oktetlabs.ru; dmarc=none action=none header.from=intel.com; Received: from PH0PR11MB5000.namprd11.prod.outlook.com (2603:10b6:510:41::19) by PH0PR11MB4903.namprd11.prod.outlook.com (2603:10b6:510:36::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21; Mon, 19 Jul 2021 16:42:15 +0000 Received: from PH0PR11MB5000.namprd11.prod.outlook.com ([fe80::bde5:66de:e755:c5bb]) by PH0PR11MB5000.namprd11.prod.outlook.com ([fe80::bde5:66de:e755:c5bb%4]) with mapi id 15.20.4331.032; Mon, 19 Jul 2021 16:42:15 +0000 To: Paulis Gributs , , , Shahaf Shuler CC: , Thomas Monjalon , Andrew Rybchenko References: <20210715132015.1587544-1-paulis.gributs@intel.com> From: Ferruh Yigit X-User: ferruhy Message-ID: <23ee1261-e6db-69d2-8a9e-423dc38a925a@intel.com> Date: Mon, 19 Jul 2021 17:42:09 +0100 In-Reply-To: <20210715132015.1587544-1-paulis.gributs@intel.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0010.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:62::22) To PH0PR11MB5000.namprd11.prod.outlook.com (2603:10b6:510:41::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [192.168.0.206] (37.228.236.146) by LO2P265CA0010.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:62::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21 via Frontend Transport; Mon, 19 Jul 2021 16:42:14 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: efaa1698-fbcd-4e1c-40f7-08d94ad42a64 X-MS-TrafficTypeDiagnostic: PH0PR11MB4903: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6790; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: B68ow2qX+QhWcnIZSFDZ+UsY/FNbf6LbEUh3pwoxeC57r9wxwYQpVmfMwzBOH6uH3P5nA+qjqtEj4Q0vCajSTeoz42vv1uR5FFKZmg5kEvUfKDpP40EVMF1Sq/mtaSj1SDIsM4NHFYpfNXuP6tuMxfZ8BkUvcNJVTWo90DGLV1Ob9rBHF9jVL4vPKwCcapWo064m36sTyE3fEhnKNfAF0CPfyOrffOKUPJebYRNGa+N+UANuj04EmYH5zpBp0KkAEXxj360/Hxk2E+m785RxMxiewatVmM0btEJA21Tq3tfo7BPfqNtJzH0hvFYi/h603cfSBlyyqTeqGC4sc1GJxWozM6EyWWBiEcsI+gz1pfgfSD3UAiNS5w4BICQSGvtAzaaoyMvZIlTBJXTHYHNeLW9WbT3KOLZR+Dz1c2EkaCRIFXjUTn0iM7/4HEVg6IgZqC0s+DWH7LAlAwrFI+MqfZH4dbO06IHJXnS9PSYND2IkwbWsyYHnlzyNvM2Hza58PBzy8dGPbk3qljNBoKMCaFtLx0wjsh6+xbLyikiJYihDOFrjl/sl6tu3YuhMB/B+ksXPLkWrU3eUGQ4VXm8RiCKkx6iir5+9USuI48KEP4w79BZ9WR5dPr+AH3TyGB+ynt3K52Yuf3zOXVGJCVKeOO8inBlXDNSmjJU7sVxvSYanKaaTgcsxnTWWjBG3nKzAYc0IknH3DWv6zX6ZkY9s9w== 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:(4636009)(39860400002)(346002)(376002)(136003)(366004)(396003)(31696002)(38100700002)(83380400001)(86362001)(6486002)(66476007)(66556008)(36756003)(8676002)(66946007)(31686004)(5660300002)(478600001)(8936002)(6666004)(956004)(54906003)(2906002)(53546011)(316002)(16576012)(110136005)(186003)(2616005)(4326008)(26005)(44832011)(45980500001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aEp3V0w0RFVhNFcwQ1JKd2NEVkNCdGQ3ZXFqWFdTUFUxaTM3SU5hYXBXQmd4?= =?utf-8?B?Ulk1VXI0TTJxMWMyWGZvY0E5MjdWL3ZUY0hTSWh3alV3Kzh1NFFPeWl2U1cy?= =?utf-8?B?bFMxdUhuRTh1UUlTYThtaVU0b1c5NzlhM1pJMWlZUTd5R0xTeGgrQlVCR2s2?= =?utf-8?B?T3dXdGNia2pNMEdvTmV2Q2JHdWtHSW9vQjZvMFQ1MXMvU3lNcUJ2ZWlzN08y?= =?utf-8?B?cWRzcGdRaCtTdnlyS0UrMmhQTldDZ3NBUm5RVFp5Y3k5aGxpVFIrVDNxQjM3?= =?utf-8?B?WStUcWFROTFaUDF0K2FzWDlBR2IrL00xVHMvMEJ2WXZCbkwwUkR5YVJkNFBq?= =?utf-8?B?TmFOVVdTVmZMVDFFcnMxS1I3TXJVT09zSTRrSGNqV25oOWFBY3B4RU45aEkr?= =?utf-8?B?TVJXcE5zMHUxaWtzajVjSmNsYlNqWm5GTHVkdjVPTGFjRVlhbWx5OFNLMjNP?= =?utf-8?B?T1F5VWFzUit3SkxoRlBHbjV5Z2Zkd2VUTWdBb253NW1TSXdrOFVOMjVjVUZZ?= =?utf-8?B?VFJPVE1zVkM4Z1RzV2tPMVMyTkRrWDRjRTR5bUI4QXB3MWZlb2VxKzMvZXJ0?= =?utf-8?B?MGFhRHYvUDhIcmx5Ym9TZmNjT3VJZEdPUzVYNkdySHcyd3Y0ZFd5NUxaOXlV?= =?utf-8?B?RTA5dVQzTERHeWROTTk2TTZPYW5jYlpFZkpvZFlrOE5TKzJ3TEdPNWdsL2dW?= =?utf-8?B?OTZVNTdMUnRuLzE2bnJ6VGI3cENYeFBER1lqTi9YbUV6N2ZtZ3BUd05XQis5?= =?utf-8?B?UC9lUWNscWtmdkNVY3BFalVodmRoOTZ2UkE1eHZwRFlZQWh0djhUOG1rUFVs?= =?utf-8?B?bzhZVTIrQm4xNjhTbXJqOThoSlQvalJ6alNKZWtSamZqZGJIMGtmTE1BejRS?= =?utf-8?B?VEF6WStnOGYyWjJWTWFNN0x4aEtNKzlPWWhVSGkxZk44cytVQXIyZUhnbEZJ?= =?utf-8?B?S3hGZHRQWE8wV0tweVQ2T1BRaVFFY2UzYWNQeHRyVUdoS0hGaFVpMXY2eWpN?= =?utf-8?B?QVdiTzErMCtUQWhuMmpvVEtnK0hQYndidHFZdmhhKzJDSlFyeFFmTy9WMkRK?= =?utf-8?B?Sm1reUlETjhqQTliTXVoYUZ3YXBZRXlldTduOUt5Smh5TXdsUzI0YUVOdGEw?= =?utf-8?B?R0pZSnFQT2ZQQlFwTU55d2ZrcElnQmw0MEhSdWdZZWhtT0xYV0dkcHoxWDE1?= =?utf-8?B?VXNFbElIYUl6ZjIvVjJ4Qkd1cXNyWW5XcDYwZlZkNDFzSTlDT0hJc2dNYW1E?= =?utf-8?B?R1BkdUNXYkMzNW0xa3RvRDlIdXFieEl0aFNzNnJTUlozamEvQmszTys5RDVH?= =?utf-8?B?bTVUbi9NRE9NN1AzcHgvcDZiR1pWQ05MOWpiaXplc2dTZkdHNmJPaHdsV2hj?= =?utf-8?B?MkRYUkdQK3NuK2JCMmxKenlrTFp0YU5tbFF1dHJOb0dIYWtqSEtIZyt5dVU4?= =?utf-8?B?eHR4Z2w0SFdQSnk1ejl0eHhCbnMzOUUrQ2lYQzk2VzlNRDk0UkdBQWJwZ1RM?= =?utf-8?B?MFIwNWdzY2xsT3c3OTQ0Rkc1UVJ1MzFRUDYzdTV0TmZFaG0xWFNCWnVGRWFx?= =?utf-8?B?UzhSOGhjUSt1MCtmandPQ0JRUEpKRXVpaE5QRVpvS0thd0svRTdxL2k5MzVV?= =?utf-8?B?dkNBN2J3NE02MnV6MElLeWkwZzNwUWdqbGdWUEQxSzZGWEwxL0hRc0Z1Y1Zh?= =?utf-8?B?VlcrVk9XUnpvVko4anlPeitPZXI0ZUo4U3dpMkVjM21MWWFzS0I3S1FQSk5v?= =?utf-8?Q?hrQ3X1TnwoprFcVkk6tjeTAG66fNeRselXZz96N?= X-MS-Exchange-CrossTenant-Network-Message-Id: efaa1698-fbcd-4e1c-40f7-08d94ad42a64 X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5000.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jul 2021 16:42:15.7139 (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: /93ftKxwHaGsr3/IW0qPwNOM+pjRNVTjIt0Nnua6mTJVvIAQ+ThwE0MlnIBjoe1mXflLO6kIY82yUKCkpWVnsA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4903 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] app/testpmd: remove most uses of rte_eth_devices 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 Sender: "dev" On 7/15/2021 2:20 PM, Paulis Gributs wrote: > This patch removes most uses of the global variable rte_eth_devices > from testpmd. This was done to avoid using the object directly which > applications should not do. > > Most uses have been replaced with standard function calls, however > the use of it in the show_macs function could not be replaced as no > function call exists to get all mac addresses of a given port. > > Signed-off-by: Paulis Gributs > --- > app/test-pmd/testpmd.c | 80 +++++++++++++++++++++++++++++------------- > app/test-pmd/txonly.c | 18 ++++++++-- > 2 files changed, 71 insertions(+), 27 deletions(-) > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c > index 1cdd3cdd12..42d9804dab 100644 > --- a/app/test-pmd/testpmd.c > +++ b/app/test-pmd/testpmd.c > @@ -857,16 +857,23 @@ dma_unmap_cb(struct rte_mempool *mp __rte_unused, void *opaque __rte_unused, > int ret; > > RTE_ETH_FOREACH_DEV(pid) { > - struct rte_eth_dev *dev = > - &rte_eth_devices[pid]; > + struct rte_eth_dev_info dev_info; > > - ret = rte_dev_dma_unmap(dev->device, memhdr->addr, 0, > - memhdr->len); > + ret = eth_dev_info_get_print_err(pid, &dev_info); > + if (ret != 0) { > + TESTPMD_LOG(DEBUG, > + "unable to get device info for port %d on addr 0x%p," > + "mempool unmapping will not be performed\n", > + pid, memhdr->addr); > + continue; > + } > + > + ret = rte_dev_dma_unmap(dev_info.device, memhdr->addr, 0, memhdr->len); > if (ret) { > TESTPMD_LOG(DEBUG, > "unable to DMA unmap addr 0x%p " > "for device %s\n", > - memhdr->addr, dev->data->name); > + memhdr->addr, dev_info.device->name); > } > } > ret = rte_extmem_unregister(memhdr->addr, memhdr->len); > @@ -892,16 +899,22 @@ dma_map_cb(struct rte_mempool *mp __rte_unused, void *opaque __rte_unused, > return; > } > RTE_ETH_FOREACH_DEV(pid) { > - struct rte_eth_dev *dev = > - &rte_eth_devices[pid]; > + struct rte_eth_dev_info dev_info; > > - ret = rte_dev_dma_map(dev->device, memhdr->addr, 0, > - memhdr->len); > + ret = eth_dev_info_get_print_err(pid, &dev_info); > + if (ret != 0) { > + TESTPMD_LOG(DEBUG, > + "unable to get device info for port %d on addr 0x%p," > + "mempool mapping will not be performed\n", > + pid, memhdr->addr); > + continue; > + } > + ret = rte_dev_dma_map(dev_info.device, memhdr->addr, 0, memhdr->len); > if (ret) { > TESTPMD_LOG(DEBUG, > "unable to DMA map addr 0x%p " > "for device %s\n", > - memhdr->addr, dev->data->name); > + memhdr->addr, dev_info.device->name); > } > } > } Hi Shahaf, These callbacks are used to map/unmap anon memory and added on commit [1]. Can you please elaborate why it is required? And does xmem covers this functionality already? The concern I have is, it uses some DPDK details, like rte_device to implement functionality in a test applications (testpmd). If this is a required functionality for end user, it is very hard for them to implement this, and perhaps we should have some APIs/wrappers to help the users in that case. Or if it is not required, we can perhaps drop from testpmd. But first I am trying to understand what functionality it brings, if it is something required by end user or not. Thanks, ferruh [1] Commit 3a0968c828a6 ("app/testpmd: map anonymous memory for devices")