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 5BA7D45DA4; Mon, 25 Nov 2024 17:31:59 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 45EBA40B94; Mon, 25 Nov 2024 17:31:59 +0100 (CET) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 2E56640265 for ; Mon, 25 Nov 2024 17:31:57 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1732552317; x=1764088317; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=SmPT+ShacYCngQEqE+Jx4yOks5yhjN8uiXOWkMWQCjY=; b=jewbIYhxcDP+dDZyM/s8fG30rQL3sJRpV7Rwc9figW6TFUJkvogW3U5K mUEdexq18/8NzTTymp8HTkwCVIuhsBvvrBWpL7xLImwN5mc9xJTaUduem QDPv+cz/s3LZvDQuTglgYRUKM5UpzVk6t92+Igl8JuDv1u1YVQ1dSvKng Llq571hgr1Ci7XNH/jZeUeTu7AqYmW1lloG9Yfb3HbnIMEvjOl89TXsLW SzJD1aOiDnq9zdIRqIF8DTmiuxpdCxjHailYMtgAWHmVaWcK/dvV7Bzf8 mzJuIiOijDR1jwitEmEIjjyEPCzHAtk3Q2edtdSFMGrxQf22ykvqV8LUt w==; X-CSE-ConnectionGUID: bVon0JwJTEqhfdD5je8HAQ== X-CSE-MsgGUID: TMGQ1pV2TX+ZejBYB+8Xww== X-IronPort-AV: E=McAfee;i="6700,10204,11267"; a="32925891" X-IronPort-AV: E=Sophos;i="6.12,183,1728975600"; d="scan'208";a="32925891" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Nov 2024 08:31:56 -0800 X-CSE-ConnectionGUID: uG0b2YGzS0amSXGxzcLWgQ== X-CSE-MsgGUID: xKHlXWO0Qeim44im1agv7A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,183,1728975600"; d="scan'208";a="96225752" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orviesa005.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 25 Nov 2024 08:31:56 -0800 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Nov 2024 08:31:55 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.2507.39 via Frontend Transport; Mon, 25 Nov 2024 08:31:55 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.41) 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.2507.39; Mon, 25 Nov 2024 08:31:55 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ofckg8TEZmNVn+bKvlCFlTa2LTWhLonI3WSG38cqtTz/u+zbdPfkyd9mG0q+cLqY/ehinbH0vFtO120Lrg9AgDnMIKKZnIgTTdjzTUbQulm1tObaoGaqc0ER4Y9u1ZntWDKCME6yugNVPb9MMCs+MVRisqEvY/xIcF1coTlGBbD9BBXcpATUkAbi7LRx+i+I/k82+XphecEqEUjmW1CFk/vJWDtCUjYy7+EeHcKXK5sydnxBHTmlTGA1GN1xr28Yi+6Ic6cdJ/H8PJ3ShaddkVtK0IzXhWSG6EzzN1gXoJFS2kqNAbvnAdqHMRe+quj1DQJKW/H2iG7reITjYLi2Mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=WnK0BZ2rBTNwqK+QJZYhwKKfH2KcQwaEMRWwtcmKnNw=; b=fqE0hTnXKLWkH+NbmLsM69Hrij5E0ynT37yhPQv9sxRuMl3lFUhPwE//2IaxnslE2dMHX8Cv13iBOaeG20EiJ8ik9OBpvIZnF4hvk/YaJYdHzY90WrvhrD96kjovpgKsHB/KQyXMoRaaEw6H3lUrK2ROHrqRnkNTwahxbh5OInHy1lp27nbqOANSbxI5aJwi2AGd/JUENLxqeSri34kOjhjdVL4UG+E9kiLBIC2TXV51ID8zJ4sV2Dhd0tYtns34rrYQQ3eaEFgDu6VM8Uw0jBi1TvVAIU3JfzYC7ASKi1+Xah7LAcQtUvCGVoVILtnUK/PLg8eVIEUn6mO29kI02g== 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 DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17) by DS7PR11MB8806.namprd11.prod.outlook.com (2603:10b6:8:253::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8158.27; Mon, 25 Nov 2024 16:31:47 +0000 Received: from DS0PR11MB7309.namprd11.prod.outlook.com ([fe80::f120:cc1f:d78d:ae9b]) by DS0PR11MB7309.namprd11.prod.outlook.com ([fe80::f120:cc1f:d78d:ae9b%4]) with mapi id 15.20.8093.018; Mon, 25 Nov 2024 16:31:47 +0000 Date: Mon, 25 Nov 2024 16:31:36 +0000 From: Bruce Richardson To: David Marchand CC: , Thomas Monjalon Subject: Re: [RFC PATCH 00/21] Reduce code duplication across Intel NIC drivers Message-ID: References: <20241122125418.2857301-1-bruce.richardson@intel.com> Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P302CA0009.GBRP302.PROD.OUTLOOK.COM (2603:10a6:600:2c2::17) To DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR11MB7309:EE_|DS7PR11MB8806:EE_ X-MS-Office365-Filtering-Correlation-Id: 36c4ad32-ddd7-444d-013e-08dd0d6ea813 X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?VXk4K2N4OThoU3pTczNmZ01YVHFqdHdHeC9uSlEzbGs1NXB4T014L25hbmwv?= =?utf-8?B?WWc0c09KTXNsenJSSGtoWktZTG5tTzQvQ1Y2Y3FnK2x0ems3Z1EvUHFjdzFW?= =?utf-8?B?L0ZpSXliOGlUcjVEYW9wRXQzTGR2bncrZ21ORnY0aDhra3pnMjg5dUFaMmJo?= =?utf-8?B?bFo3MnpFMDBYL2hhT3pKRXRabHZZM1BzQlJwdmUySithV0RtVnpHQWdDeEhD?= =?utf-8?B?dDAyVVREZFc3em0vNVdzSTVQR1lhWXNRK080RmJTd2pxT2RzS1RZUlovUXBn?= =?utf-8?B?MGxOakowd1JPNncrUzl2ZEdOL1gxRm0xWGFrSk1kMEtOK3RFaVlzSmxMWlVX?= =?utf-8?B?VlZYUDlwaVhFN3BEelNTWFZSaVY3RC96T0ZROVk1N3V5by9oZ0lab2luY1hZ?= =?utf-8?B?SXlKRDVJTHBOTE11Tzl6ZUUwWjY3WENaQkx3R1F4REErSElyZ1pRdFVCcUFQ?= =?utf-8?B?ODJUYzhVdkxrV2xqVDZkUXhjSHVEMDdXd0pKcGhUdlFJQ3FUZytaWXhicWZG?= =?utf-8?B?UnJQRGI1VjhqSzFheUhWdVI3WFB6bGRZKzFsME9HN2NXeHZmNklKMkUrQmpF?= =?utf-8?B?eU9WR08wcy91bTVEaXZzaitvRHZGaldXcFVONzZJZE5JdEhYUTFlWnRBck02?= =?utf-8?B?TEJFcm1ibk1kMlRYOW8xTWlwdG1pcXRzSVNoUm9oN1lsT0pzMmU2MHBreUpa?= =?utf-8?B?QkovbTgrK3VvbXVSVlVsL3RmM3E2ZjJYUjVBa1dUZVNLM25CNjB0c0ZMc0tB?= =?utf-8?B?azM1THAzTm5CMVZ3TzF4WHhvT1lTSGIvY0VtbGh4V2ZDRzAzNjVCVFZOTGdU?= =?utf-8?B?ZURpV1E2RFErOURETDRweWtvTnU5RXpSaHRaaFlMaWdJcEFuVXZ2SkxsQnlD?= =?utf-8?B?bms3Z3AyUldxQ0tWdVRmcHBhdTVQMXBKdUNkR0tzeWE0NEg3YlBOM2k0TzV0?= =?utf-8?B?d2tsVU9MT1M3a1RITUlZSU9ncERjdFhOUmRpakp4TVQydU1sMnBnS2JOd1dv?= =?utf-8?B?VVJiY3dVOUladVppWUR4bzR6SWExUmhMZHNySE5Ia1Rhdzc5VHk1RzFsTGZF?= =?utf-8?B?U3o5amRCRmlZV3k3R1VFSzU4ZlN0SGd3aDAyZzNjNWJsWGtoa0p2cWdjb1E0?= =?utf-8?B?YThocU9mbjZHcmFsVkxyTlZmbzd6K0lXQUF4MlRTOEVzK1BydTlHM0x2bi9l?= =?utf-8?B?ZVA1eFhkeGNZWGlpb3llWWE3VkhXODIwSmV6NVgxeE42OUUrWU9QelkreFVP?= =?utf-8?B?UkNvbEhybHoyNC85YnVSQTRENnJ5NlpCZm9VWkVsdk5tVHhiUXZTbHNLN2M3?= =?utf-8?B?UU53OE0vZ08vcG1YSk83RENWWGJGWUJsZHJWOU5SVHplczl2RGpDOWNjWWls?= =?utf-8?B?L0xLUXlzZEZsbk9GSURHZ24yandpZkZiSFcrQ3V5cHFZR3drNHRtemZNeVg0?= =?utf-8?B?K3dibHQreEtNTVVDKzFiNStNcHFNRVBJZlRZaHp5cEVoQmw2d1pKVXNqN3pz?= =?utf-8?B?d0FVdGlKSE5hbkdYWG01STh3SGZFUUZvU1pGeDd4dlN6KzYwY1A4WjVrUzlh?= =?utf-8?B?d1dPN1I0RnpHdWtNL3BKNWY1REtqSmFBOERla3hTQWZaZWhHamRKa3ZpK0tu?= =?utf-8?B?cGdpNnViekhld0ZqRFc3YVlhby9FUm56Rjg1YjFqQ2NrYzRRcGZKUXFsdzRx?= =?utf-8?B?SlFuUTdlelZ6U3IvZnVoL0NncENDUy9EeldOaFhJdml5NnRleWpGK1p4M00z?= =?utf-8?B?YmVIblBVb1lWVnZ0WlZrNGdaemxKVzlRbmt6NVhYWEk2a09CVE1OamUyOEhF?= =?utf-8?B?MEJHTnRiZ2l0NHV4SVpsZz09?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS0PR11MB7309.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cnlSaHVmWE52TzhWa2FVblBCR1Yxd1RGT1hPNStQcEV6QXBUdFY4LzRBeFRE?= =?utf-8?B?NTlPOWwrcVcxRTZGVVgzNFg4N3VocTR2S2tLRmM3TzN5d1REZEtNNjl5dk90?= =?utf-8?B?dmZoM2l6TVlMQVRCL0R0S2hOQnRCZklqekZmMUZ5YUJpMkh0NGlGQmt6SHV4?= =?utf-8?B?WEpBTWFSdWtyay96ZG9Za25iMUkrdCtiajBiQkZDZkZHUlNPVU02eTFjanM0?= =?utf-8?B?Mkt6bzNVTkIvaXhhS0JsSk9pOTN4ejl2dWMrcXBkVFNzdThBSkVqY1dZeTA2?= =?utf-8?B?ZlhKdDZhemRCUk1LMmVlUGJQZWZuL2VuYWdxTndKRzErUkJYQm5vS2ZRcitD?= =?utf-8?B?ckRwZW1UVHZZZDkvS3dUTHRKb0l6ck1uelZFY1hnRG5NWVo4a3RreHJDUVUx?= =?utf-8?B?anBsbHR4VUFHVGNVRWg2eFprMnRtWGZzUFpJTlU4OEd3d1BBUzVEU1RvUVVn?= =?utf-8?B?WjVUVDUwYUorY2JDSlBoSERUMlJjNnBJSDFvNnppV1ppN0MrRkRINnJ0OWJR?= =?utf-8?B?NVNzWDVGZThuRlR6ZGdLNVl5T29VMGYxNHdUU0xmR0lrMFNZeW1qWjZMN0ZH?= =?utf-8?B?UlhJZndtcGhiY0RGSzJ5bktjVXNJTHNPM0JWK1hhYU5OdTNtVWpDK0xEaGlQ?= =?utf-8?B?NEFIbmtBSm4zNTh2K2RadE0xZUZycU5mRjc0QkdhYllZZEVnc2V4MG5pMTJL?= =?utf-8?B?WmszUEFsUDZRS1JwV016TTFBY1FmTWU2eXJwNU9zT25CNlZMSjQxWVJXWjRn?= =?utf-8?B?b1pPQmhMMlpreU00RXV3QVNuTlFPMEh0Q05WMDJmd2h6OHhadXRpK09wTkNw?= =?utf-8?B?NjE2NXZhVVA0OE8rbFZMMjNUeXgvSEFDR1VjQzg0L3pLUWRyeC9oMFFuT3JO?= =?utf-8?B?ZmNBOFpWS1dxYVJnMVhsRVFTd1JWS0hiODZwdG1XL0RLWGt0T0JGT203WXlK?= =?utf-8?B?ck9rSFVtMnRXdzVaZ2lybVdpNTZOTGVQVXYwN0JFMGluUmQ3emowRXY4SDdp?= =?utf-8?B?TlkwQ05IRmlXQmFoS1BWeDhQbXQ4SCtqcXdiLzVmclh5emtXcmMrVDJJUWtW?= =?utf-8?B?Mkc5dnFiMVRpSkZaRnkyQTROckcwWlo2Qm9DOHl4SDB4bEhtbE05R090OGM0?= =?utf-8?B?b3lZYndHNFpveHdhdlp5Y3ZPaVBhaVRzQnh6SFEyNmM1QSt1Nks5VEJBSE5o?= =?utf-8?B?bktjbkVNK1U5NDdRM3g4ejBrNStqNXdvcEUxd01kay9pRE5oNFBEZFhWMmJn?= =?utf-8?B?UW9QaldSTk1SL0dLaTR1WUxQVmQzZWtiWGI4UHU5NzFCY2lxUlhjM09sOE1X?= =?utf-8?B?NWlmN1pKTTRCcFFyd0ZYc2lNOEQ2MjVjOG5hTmUwYUVxZCtjQTl4eTc5ZVA1?= =?utf-8?B?YUl0WGNJK2ZjSTJOTzlJeGdWeWVSUEk5N2FjR2VFQ3poZ3NkMGltWjBPY1Nl?= =?utf-8?B?dWJVOHdHUHFPOTdhUzV1WXpEYjZMcERJTFlaTDIzUEcyNmYyaTRxVjFKQXhO?= =?utf-8?B?VmIxWEprMW5aRGVSeDlnMGFRU3RuUEYrV0lSR2RacVUrRUwxY1Awamt6UXcy?= =?utf-8?B?a1BzSWFJWjNrWHIzZFp0MzhoMEQ0ZnNKSElPZnJLbWNMM01qb0FSbTl3bDJN?= =?utf-8?B?UTVGNFZGSm5Wa05NU0kvVHQ1TG9UOVF3NWx2Q1JOM3RDc3UwaHhJTEFtZmcx?= =?utf-8?B?dkU2Zm1MNE9vZVY5aHJBUGx6QXZTb2NodnpQRzVuU0pDOTNGc20zaXQ4VGNt?= =?utf-8?B?TXdyVHJWSnhwdDJCVmhINDg5RmR5VlVRZmkza2tUWjZHMkhPemdZNHJPbnlG?= =?utf-8?B?VTFScWtCdk1WRW9xZ1dIMGlkRDZVdHI1TFFvQ1ZTNmswcjlEc0J1T0UzQjd3?= =?utf-8?B?eFBTbkhBTVFFNmhLbjNRMExndnZycnBCNUdNeFFLYjdxaDVZbksrL0pCVVVP?= =?utf-8?B?TGUrM1dNd3dHcUl2YmFnckhHRGFRV09KUkR4dUppU0dhQWc1Q0Q0R1J1RUt0?= =?utf-8?B?akZHRkpnUWJRc0VlOTRaZnFEVlVUNXhwOG52SXJBUXkzeGVBYlFCSW9BRHZM?= =?utf-8?B?bVNhWnZQQXE0VndWeXBnbkNDZGsyQ1B6RkQ1K0xIbnBuSXZrTnJ4c1R0emdP?= =?utf-8?B?RlYvajNqaGE0YXZrNi9mS1F3Ym8rdXVOdUtFUHF3UFU1dVRtOStTbUVBY1BN?= =?utf-8?B?QXc9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 36c4ad32-ddd7-444d-013e-08dd0d6ea813 X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB7309.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Nov 2024 16:31:47.5352 (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: LPXg6YgcKNxW29YjQYj7b6oBXn+quvu8BvQ8fsRWWv/GP/9Us3y4rqJiB/KYGEXpxcAniAD8SeFdXtugEvF3601jt2G+2ElDts+0Edq2SMA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR11MB8806 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 Mon, Nov 25, 2024 at 05:25:47PM +0100, David Marchand wrote: > Hello Bruce, > > On Fri, Nov 22, 2024 at 1:54 PM Bruce Richardson > wrote: > > > > This RFC attempts to reduce the amount of code duplication across a > > number of Intel NIC drivers, specifically: ixgbe, i40e, iavf, and ice. > > Thanks for starting this effort! > > > > > The first patch extract a function from the Rx side, otherwise the > > majority of the changes are on the Tx side, leading to a converged Tx > > queue structure across the 4 drivers, and a large number of common > > functions. > > > > Open question: > > * How should common code across drivers within a single device class be > > managed? > > - For now, I've created an "intel_eth" folder within the "common" > > driver directory, thinking about it after, it implies to me that > > it is common across driver classes. > > - Would it be better to create an "intel_common" directory within the > > "net" folder? > > common/ drivers currently host code that is device class agnostic, > like providing helpers to talk with hw. > No common/ driver has a dependency on some device class library. > > This series adds code that is not built into a library so there is no > need to express dependencies in meson. > But if the need arises, could it become a problem? (adding a > dependency to lib/ethdev to some drivers/common/xx/). > > > For now, I prefer the second proposition and have this code hosted in > drivers/net/. > Thanks for the feedback. While when I started this prototyping I felt that common was the right place for it, at this point I'm now tending towards this second location - keeping it in net. Any other thoughts on the relative merits of the various locations? /Bruce