From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0060.outbound.protection.outlook.com [104.47.37.60]) by dpdk.org (Postfix) with ESMTP id D6455592B for ; Mon, 18 Sep 2017 14:08:05 +0200 (CEST) Received: from MWHPR03CA0056.namprd03.prod.outlook.com (10.174.173.173) by BN6PR03MB2689.namprd03.prod.outlook.com (10.173.144.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.11; Mon, 18 Sep 2017 12:08:04 +0000 Received: from BN1AFFO11FD008.protection.gbl (2a01:111:f400:7c10::152) by MWHPR03CA0056.outlook.office365.com (2603:10b6:301:3b::45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.11 via Frontend Transport; Mon, 18 Sep 2017 12:08:03 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; 6wind.com; dkim=none (message not signed) header.d=none;6wind.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1AFFO11FD008.mail.protection.outlook.com (10.58.52.68) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.35.14 via Frontend Transport; Mon, 18 Sep 2017 12:08:03 +0000 Received: from [10.232.14.39] ([10.232.14.39]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v8IC80uo013458; Mon, 18 Sep 2017 05:08:01 -0700 To: =?UTF-8?Q?Ga=c3=abtan_Rivet?= CC: References: <618e47fbcfbc9ead4c009f0456faab563f22a426.1505726803.git.gaetan.rivet@6wind.com> <88d7466f-8c93-b97c-48d9-fb7bab7e7f77@nxp.com> <20170918115151.GS21444@bidouze.vm.6wind.com> From: Shreyansh Jain Message-ID: <1ed11883-d6bb-05c1-aa14-92046bf8bd49@nxp.com> Date: Mon, 18 Sep 2017 17:48:59 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <20170918115151.GS21444@bidouze.vm.6wind.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-Matching-Connectors: 131502100836176289; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(376002)(346002)(39860400002)(39380400002)(2980300002)(1109001)(1110001)(339900001)(24454002)(199003)(377454003)(189002)(77096006)(110136004)(229853002)(6246003)(189998001)(68736007)(4326008)(36756003)(31686004)(53936002)(105606002)(356003)(305945005)(8936002)(498600001)(81166006)(81156014)(8676002)(65806001)(65956001)(23676002)(93886005)(47776003)(106466001)(33646002)(104016004)(65826007)(64126003)(85426001)(2870700001)(5890100001)(5660300001)(83506001)(76176999)(54356999)(50986999)(97736004)(2906002)(86362001)(6916009)(2950100002)(58126008)(316002)(31696002)(50466002)(21314002); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR03MB2689; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD008; 1:wkaK3kjYXxvjqduS+vu26MExknwunsTONSDuxFBh0x5qko2boh3OebMF3lD65mq3Wqu5lK+xSSAW0whyvlGLef7iPPYVgTtJnEwuEzAg8J8Q0y7TYpXr/r8Pog09SzEA X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7a8fd278-9071-46d6-d1a1-08d4fe8dea05 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603199)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN6PR03MB2689; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2689; 3:5yExjjTDLCzCZNA+ALJDlYyJkRrX526e9gtRu5EWDBsPlh38v3d6+sDIzZRg692aLZO5AzMygb6JIt7qyHPK5RQuC0Vq0Ak9wyw/248WSijgKxGpSISxpbMQjPdnGQ4R9KFnhrXVWqdERiNUDVGcFr3uFyiBGHWOU8ytber+3I3YsZ5782uGfy4TlzQ2+hgE2IisK9SrzXiQoRyP5YTkMAdTx2WVE9WMMOlOOK7nV1FpnnMB69TD8yLnpNZo9d6ZHOWfcBnkS1CmQVTtzd4T/5LA+YEDHCVbLsSQbNxj8bLpbSOsKb9o5T14zEEtZVpFw3M6OncZV/opzsS2Xi3usvAVNLUuhre2gJXJdN6mDys=; 25:R6ruryeB0ftzIC6PsrDwgg/+vofX3LaNzzEEYkDVzhYh9D+a8wrLVaIJ0cO7gHcJJpoWDFPRtoOXhSpCavUsAuaF//g/ekf1he9KrFR1Ew6T14s1ZGdGSDiYRByhSg+gBrrbPABsxiaRPpMnXnuijagy8xLFVVYSG59z9HbH+2P9czVTW7tILZKO8dKBVBDaX4l9gYgO94NVd0QXaH6D6sxTPYPGwu6zOnZNkWcYiMtkHo08/jMCi6iIoz4lFxYgSvM5C560S3nBPejLujLOpdXlYeqVStqpo490wRi3OAXSFzq9bqLeUSLEfq8LQpZW3M/9d1d/pHcdjTFepo/itg== X-MS-TrafficTypeDiagnostic: BN6PR03MB2689: X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2689; 31:OFFjaLx8UMo+Ilmk57jXd4d2JguLQtynSuWPGyMRQhlVnNVwn6a2NrQ369179Sg9us7wXDzTLlVT3Uy2c/8mvGuVPMkgvmCkVFn8CEF+c7USLtlbsiDftnDnIT38NkY3fBLSEI0pM2JUxk+MiW035cGWcLLcP5w5cbqQ9igjx1c6lIT5MlhrkU+naFz3MJjzOajP5F5M+VJrXCdPt+wlgz7yLIxe3yW++YjwvSM4zbU=; 4:iD5phnEcoNXuCpLW1Mh2Q3dV0npLO3HNMg79EGVl5TiNKfu2MXc453W2VadCEzDEd+CqDG1YoijPBKcYoM3IMb13plOZA/IACg2oUlJaq33PDyyflGtnBkkmGZRjTw1Agow3jW37RG4kz6Ah1GUaspMD7JRRiihEZbB0RGKd8s1y4SGubqeKSDwVBHT8d7o7V31W9YVyFKQyLz8fzAjBH0c4rXr9+i7iX64xTRpVoXAKEnLyA+ybQgNGMN0gF9ySLYAU9otCDK5MeY6G49YaZU0HG68j+3+qt26QCZWvpRE= X-Exchange-Antispam-Report-Test: UriScan:(131327999870524); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(10201501046)(3002001)(93006095)(93001095)(6055026)(6096035)(20161123556025)(20161123563025)(20161123561025)(20161123559100)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123565025)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN6PR03MB2689; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN6PR03MB2689; X-Forefront-PRVS: 04347F8039 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjZQUjAzTUIyNjg5OzIzOlI0dlRUaWRWd0hPUUkyV0FLWGN4Vk9wS2Uv?= =?utf-8?B?MG0vVDBVWnFqWjZVTHBkKzlpaFlncGNHS1ZZMkxPTHRpczJSS0tmQU9vaTFB?= =?utf-8?B?YXVvb1R5UnJ4VlIvTDBMZTVYN2NHYU9Xc1FKeU4zdUNQTXdhQXFLMndFWVVO?= =?utf-8?B?c3YweC9HQ0FUb0hqcWsvd1k2R1NVUjBCV1p6Q3huQVYxQWF1UDhBZ1FjWXlQ?= =?utf-8?B?a1ZlT3VLa0VFMVA1dFg0bmh2L1dRVEZ2S2dPT3NJT002aWRKM1JBU1VXWWZk?= =?utf-8?B?TkVyVG1BbnI2NTA5Qm9aOXZWWVZUQmdjSUVEaGw1SUxLTjY3NERWYkEzQ3hj?= =?utf-8?B?eXdnRkpwMm9vcExRazFyb3VKdkJOZFluSW05UThKdEtrZTkyZ3V4WUJiUksw?= =?utf-8?B?dWVpM3hJU3dNeUNVeFBwK0R5ODdldnZEQUVPeTFlL3orZkFMWVRmcXZBRWVO?= =?utf-8?B?aWUzZjlyaSszcnRxak1IU3lsTEZPdFRQZHJBQ2R6dGNrc0JZQ2UyRmtSdmZm?= =?utf-8?B?ZkxpSkRNTEx6MW81ZkZ2NGNEbStYbnNFeTAwSmVSYWE0bklEc3hDMGQvZ3VJ?= =?utf-8?B?bnhGYlE0ZjRFQnNIcDZLeGpFd004UC95T0RDYWQydHB6QmFHbTdKSEMxNE1J?= =?utf-8?B?akdSSFNuSkpOdFFwTGdvLzNkRGpob2VZVE5JT2lYb0ViTENFaW05SnMwR2FF?= =?utf-8?B?cERkMnRNSndlWUpNK1YzazlrK2RFNjViUGRkR0ZyeDNSSjRlMjExMFUrL0ZU?= =?utf-8?B?aWZCNzNtbmp6NHdYNjBOZ1RkcWh6L2hFc0k0RTBIaVE1dzFrLzlQNWpsYlcr?= =?utf-8?B?YXhST1lqZU9QTllnTUV2S3czR25xZ2plNTUxQ2UyWUxuR2RaSkZ0WUlpOFVq?= =?utf-8?B?YjFKT1p2SzY1ZENlUU5La0RQUjlwNzI0ZldyZEJFczV4ZHNQOWVtVG9NYTdW?= =?utf-8?B?SVZSdTVYaE5GNGF0dzRZSnJURGVEWFh4dVZNR1NTSkgvM3BsVTBvcC9EcmtO?= =?utf-8?B?Z3NVenBuTktGMGxaV0JxR2h0bVBKMHNvcUFuTDdaaFFQSkZaZjVONDJQbXZ2?= =?utf-8?B?a09XUXRMV2tQVnpJeFZHa0t3clhuejg1RnVWZEV1NkRUaEQzSnRNVm5IczVa?= =?utf-8?B?RFdoMS9TbnFsRUlHOU9Ta3JoTlVFTnNoMGhnQlhRZUIvd2lsYUpuNG5HVGh2?= =?utf-8?B?SDFqaUxXUUs1NER6bHRjMElLcjFjdTdYaVhXNngvZzhGVkc1bFhtU0kxR2FE?= =?utf-8?B?RVNlWjhqWlBjU0NxVkJnd21VdC9jcTlZTHQ0V2NmL3JNS3pJY3MyWGN0cFRt?= =?utf-8?B?c0d4eTBnSlNFWHFyNzIwRk9VRlNxcFI2cjVYSTJRTnJqNEFqMGNJZWFqZGhK?= =?utf-8?B?bVZsUTZmY1ZlRkZQSlZ6N0JaRHM3QWpPeHlvMS9RU1dqOTZ1OWhHakxITkZq?= =?utf-8?B?R0Y4N1E0RTBMV09SVVNwWTVtKy9CcWV6Umh3TVVWWXVGZlFYS1VLWiszT2VN?= =?utf-8?B?Qzk3cHZ6L2x6N0pITW9OUktYUnJlVEdjajU4ZmJRTGl5R3dkcS9sWStCQmdi?= =?utf-8?B?UG5CMzl2MXhrOXk1QWk3ZGptOGJQb1lMT2Nuam55QzRndjk1SjdaMEc2ck9X?= =?utf-8?B?N0tBN2FFMzJva29KTklRRS9VRzhxam0rK1dpaXo3VVgvaFdmc05Ub3VQNVBl?= =?utf-8?B?UnJsZFI0S1VpL3hCOEZVbWpkbFRCMkl1QVRGdzVtakpWODVYVDU0eGFRcER5?= =?utf-8?B?QlRzNjNXUGpLS3JUL0NHUnIzOWs0ZUVBNjdTekJQMC9EbG5IdlVBV3ErdG9R?= =?utf-8?B?MVA0THJ4MmN4MEF2eEVvVXJYNExEZEo4Mnh6UVFYdHlxdTQ2SGQ1UEh3TzVE?= =?utf-8?Q?c/53uYRk2RNawLWfukvtjGDYn+DiOfhB?= X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2689; 6:wRBScN1VTPSJoCJ07TzdxzK8YEjOWDwrr2Ys/PyAVJ8bWjFho2NFjn1EvZaCoILRuCgkxhtR52Dt9XtYa8S3BQsd3S4Ywp5OlJUzyAu+Uezy+XWpuYUG2j5EIsqmCPwobU15lpWv2sUIMTZXJydRw67BQIdjX/6RFC26cNeibs0Et8QKo8HDvgo7NywDfUbP470MGHbuQRDmbplrznH0R02J7Jgs7uy/OBtlWdBV8oZ4Da/wVEs/pvh4Z4sxZTITk7irkF/qy9K/yEN1zX5045XLP/IDPfG+SJI57gEeSqLjO6gLoZMZqMXVsVXKYmdpooSVHQZ7RIPkNAE+WxKGtw==; 5:hYBmdF5IXHZz6vrtFkKaFontsocAaBJxQRd8fMzfuzcpsGPWWmMJ3NUgFMOr0HFlv5PDYfbprQnt4bcGdUkaPKG/kmw0kCcLrTBkUEG/lkO8vII2C7W48Dyix5v9dejxb2PqVeiEKwAnxDYzP6zvag==; 24:P6l25zd6pXPn6gEZ+U6gxWxMoHYmKfFksNpibrGJgpGYuER79UgF54N+1c+TNnVD/LLLcKX5IyMRFXkSG7/XxXgDTdy+6Bol7mHpsfM4j3g=; 7:nmfajNxEFUBM/6iFOKaSzA/bzofvI4lzY8ecySGS7Usbo1c3w/OqYlsgH92cEzSwwaGL+IdyGeKAwNMvSRGcOQ9SjwlP3Mi3t5WJ8UQBvvcslGiLJo3oTigAkM4kaC8Ojyd9/rIm150SoQ+OSmrEKYohnH5TgP9EBqSCCqWNZi5tksl9eMShBVbnBLHRV2bPJVWaX82WBn9PqwnGQOmoYHXFqvxVT8/c+M+WN0SCbM8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2017 12:08:03.4460 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2689 Subject: Re: [dpdk-dev] [PATCH v2 05/14] pci: introduce PCI lib and bus 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: , X-List-Received-Date: Mon, 18 Sep 2017 12:08:06 -0000 On Monday 18 September 2017 05:21 PM, Gaƫtan Rivet wrote: > Hey, > > On Mon, Sep 18, 2017 at 05:23:23PM +0530, Shreyansh Jain wrote: >> Hello Gaetan, >> >> On Monday 18 September 2017 03:01 PM, Gaetan Rivet wrote: >>> The PCI lib defines the types and methods allowing to use PCI elements. >>> >>> The PCI bus implements a bus driver for PCI devices by constructing >>> rte_bus elements using the PCI lib. >>> >>> Move the relevant code out of the EAL to their expected place. >>> >>> Signed-off-by: Gaetan Rivet >>> --- >>> config/common_base | 10 + >>> drivers/bus/Makefile | 2 + >>> drivers/bus/pci/Makefile | 59 ++ >>> drivers/bus/pci/bsd/Makefile | 32 ++ >>> drivers/bus/pci/bsd/rte_pci.c | 670 ++++++++++++++++++++++ >>> drivers/bus/pci/include/rte_bus_pci.h | 387 +++++++++++++ >>> drivers/bus/pci/linux/Makefile | 37 ++ >>> drivers/bus/pci/linux/rte_pci.c | 722 ++++++++++++++++++++++++ >>> drivers/bus/pci/linux/rte_pci_init.h | 97 ++++ >>> drivers/bus/pci/linux/rte_pci_uio.c | 567 +++++++++++++++++++ >>> drivers/bus/pci/linux/rte_pci_vfio.c | 674 ++++++++++++++++++++++ >>> drivers/bus/pci/linux/rte_vfio_mp_sync.c | 424 ++++++++++++++ >>> drivers/bus/pci/private.h | 173 ++++++ >>> drivers/bus/pci/rte_bus_pci_version.map | 21 + >>> drivers/bus/pci/rte_pci_common.c | 542 ++++++++++++++++++ >>> drivers/bus/pci/rte_pci_common_uio.c | 234 ++++++++ >>> lib/Makefile | 2 + >>> lib/librte_eal/bsdapp/eal/Makefile | 3 - >>> lib/librte_eal/bsdapp/eal/eal_pci.c | 670 ---------------------- >>> lib/librte_eal/bsdapp/eal/rte_eal_version.map | 15 - >>> lib/librte_eal/common/Makefile | 2 +- >>> lib/librte_eal/common/eal_common_pci.c | 580 ------------------- >>> lib/librte_eal/common/eal_common_pci_uio.c | 233 -------- >>> lib/librte_eal/common/include/rte_pci.h | 598 -------------------- >>> lib/librte_eal/linuxapp/eal/Makefile | 10 - >>> lib/librte_eal/linuxapp/eal/eal_pci.c | 722 ------------------------ >>> lib/librte_eal/linuxapp/eal/eal_pci_init.h | 97 ---- >>> lib/librte_eal/linuxapp/eal/eal_pci_uio.c | 567 ------------------- >>> lib/librte_eal/linuxapp/eal/eal_pci_vfio.c | 674 ---------------------- >>> lib/librte_eal/linuxapp/eal/eal_vfio_mp_sync.c | 424 -------------- >>> lib/librte_eal/linuxapp/eal/rte_eal_version.map | 15 - >>> lib/librte_ether/rte_ethdev.h | 2 - >>> lib/librte_pci/Makefile | 48 ++ >>> lib/librte_pci/include/rte_pci.h | 279 +++++++++ >>> lib/librte_pci/rte_pci.c | 92 +++ >>> lib/librte_pci/rte_pci_version.map | 8 + >>> mk/rte.app.mk | 3 + >>> 37 files changed, 5084 insertions(+), 4611 deletions(-) >>> create mode 100644 drivers/bus/pci/Makefile >>> create mode 100644 drivers/bus/pci/bsd/Makefile >>> create mode 100644 drivers/bus/pci/bsd/rte_pci.c >>> create mode 100644 drivers/bus/pci/include/rte_bus_pci.h >>> create mode 100644 drivers/bus/pci/linux/Makefile >>> create mode 100644 drivers/bus/pci/linux/rte_pci.c >>> create mode 100644 drivers/bus/pci/linux/rte_pci_init.h >>> create mode 100644 drivers/bus/pci/linux/rte_pci_uio.c >>> create mode 100644 drivers/bus/pci/linux/rte_pci_vfio.c >>> create mode 100644 drivers/bus/pci/linux/rte_vfio_mp_sync.c >>> create mode 100644 drivers/bus/pci/private.h >>> create mode 100644 drivers/bus/pci/rte_bus_pci_version.map >>> create mode 100644 drivers/bus/pci/rte_pci_common.c >>> create mode 100644 drivers/bus/pci/rte_pci_common_uio.c >>> delete mode 100644 lib/librte_eal/bsdapp/eal/eal_pci.c >>> delete mode 100644 lib/librte_eal/common/eal_common_pci.c >>> delete mode 100644 lib/librte_eal/common/eal_common_pci_uio.c >>> delete mode 100644 lib/librte_eal/common/include/rte_pci.h >>> delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci.c >>> delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_init.h >>> delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_uio.c >>> delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_vfio.c >>> delete mode 100644 lib/librte_eal/linuxapp/eal/eal_vfio_mp_sync.c >>> create mode 100644 lib/librte_pci/Makefile >>> create mode 100644 lib/librte_pci/include/rte_pci.h >>> create mode 100644 lib/librte_pci/rte_pci.c >>> create mode 100644 lib/librte_pci/rte_pci_version.map >>> >> >> >> >>> +#endif /* _PCI_PRIVATE_H_ */ >>> diff --git a/drivers/bus/pci/rte_bus_pci_version.map b/drivers/bus/pci/rte_bus_pci_version.map >>> new file mode 100644 >>> index 0000000..eca49e9 >>> --- /dev/null >>> +++ b/drivers/bus/pci/rte_bus_pci_version.map >>> @@ -0,0 +1,21 @@ >>> +DPDK_17.08 { >> >> You might want to bump this to 17.11. >> > > Thanks, fixing this. > >>> + global: >>> + >>> + rte_pci_detach; >>> + rte_pci_dump; >>> + rte_pci_ioport_map; >>> + rte_pci_ioport_read; >>> + rte_pci_ioport_unmap; >>> + rte_pci_ioport_write; >>> + rte_pci_map_device; >>> + rte_pci_probe; >>> + rte_pci_probe_one; >>> + rte_pci_read_config; >>> + rte_pci_register; >>> + rte_pci_scan; >>> + rte_pci_unmap_device; >>> + rte_pci_unregister; >>> + rte_pci_write_config; >>> + >>> + local: *; >>> +}; >> >> This is huuuge patch :( and I am not yet through it (most of it is movement >> so I doubt anything major would be problem here). >> Just the above comment in case you are spinning a new series. >> >> > > Thanks for reading the patch. > > Yes, most of it is moving the code as-is to a new location. > I tried to reduce it, but at some point it does not really make sense > anymore. Agree. It is difficult to manage such large movement with a compile-able patch series. I think compilation success takes priority over size in such cases so as not to break bisect. Here, I found that "eal: remove references to PCI" onwards, the compilation was breaking. You have already mentioned about this in the cover letter, it seems. > > I think the important thing to look for here is the build system, > dependency graph and the division of the PCI API between the lib and the > bus driver. Agree. I am trying to look through this. > > I divided it along the lines of the rte_pci_device being defined or not. > Anything using an rte_pci_device going to the bus and everything > else going to the lib. Yes, I agree with this in principle. rte_xxx_device and rte_xxx_driver originate from the xxx_bus. Bus should be responsible for defining (scan) xxx_devices and attaching (probe) to xxx_driver. Which in turn means that all APIs dealing with xxx_device and xxx_driver should be pivoted in the Bus layer. Though, I think here the complexity is also of crypto devices. You have already reached out to Declan through cover letter - probably his (and other crypto experts) opinion would matter here. My opinion would be to have > > I'm mostly worried about this divide. Having the rte_pci_device defined > seems mostly of the responsibility of the bus driver, in my opinion. I'd > like to hear others'. > +1 from side for this principle for divide.