From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0062.outbound.protection.outlook.com [104.47.1.62]) by dpdk.org (Postfix) with ESMTP id 826BB4D3A for ; Wed, 21 Mar 2018 10:10:50 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=keNnreZ0xjbTNrscD6Wc2BhDwdvBsvL7qY9m/AHeQuo=; b=AlfIVt0PIk2UsHQl8oHyy72/TrHCBU2H5MEfjhyDevKbLl5NyNrf+//Vh0OjiFP8oe273TuptnBkXJFnnA8Q7Kvlkj2A8iC4hwpZs9IalM8a/vyHg9BlzdnHm/ZUXXFO4MRC1J3RzRuQ9TiX+McKma9ly/emB3a3mA4aIbfozCg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=shreyansh.jain@nxp.com; Received: from mail-wr0-f175.google.com (209.85.128.175) by AM5PR0402MB2769.eurprd04.prod.outlook.com (2603:10a6:203:98::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.609.10; Wed, 21 Mar 2018 09:10:49 +0000 Received: by mail-wr0-f175.google.com with SMTP id 80so3295844wrb.2 for ; Wed, 21 Mar 2018 02:10:49 -0700 (PDT) X-Gm-Message-State: AElRT7GGKLxaVNqYNhCuCx/gjPKlUI252r0VhluCwouOB26vqvm7YVFz ccsoGkR0dAtoDpoH/uTvsEI/ewwzYKJIQ01R7BQ= X-Google-Smtp-Source: AG47ELubfcx/fRxhEGs+/Bo3zngmp6MMhJ7uQsiqn/Pssrx2C6I8tZQlU8bPJQs5+4Uw89Yh6nklsW78d5J1jSPSbBw= X-Received: by 10.223.143.7 with SMTP id p7mr14981429wrb.207.1521623443987; Wed, 21 Mar 2018 02:10:43 -0700 (PDT) MIME-Version: 1.0 Received: by 10.28.30.65 with HTTP; Wed, 21 Mar 2018 02:10:13 -0700 (PDT) In-Reply-To: References: <1521618694-140757-1-git-send-email-rosen.xu@intel.com> <1521618694-140757-3-git-send-email-rosen.xu@intel.com> From: Shreyansh Jain Date: Wed, 21 Mar 2018 14:40:13 +0530 X-Gmail-Original-Message-ID: Message-ID: To: Rosen Xu Cc: dev@dpdk.org, declan.doherty@intel.com, Bruce Richardson , tianfei.zhang@intel.com, hao.wu@intel.com, gaetan.rivet@6wind.com Content-Type: text/plain; charset="UTF-8" X-Originating-IP: [209.85.128.175] X-ClientProxiedBy: VI1PR0902CA0021.eurprd09.prod.outlook.com (2603:10a6:800:d7::31) To AM5PR0402MB2769.eurprd04.prod.outlook.com (2603:10a6:203:98::11) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: fc00bad0-1ec8-4a3e-70a1-08d58f0ba3b1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:AM5PR0402MB2769; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0402MB2769; 3:3Zo+KWWZ20sxS2IXC2IbzVJXRWsX+D+bKEHgg9wx5i/XkI/i4O0838VlKvfRaeYS8Ls/LZQhUfiO4YeaIcG6ChXUVBbXzTDSHgo2mPgeDy3IpgsfQYduLSaPWoXZ6T/V2i0sg2VE0WVLFmEWNhColLBhX3t3fCKlEABtWAsPcDFi9l8ml99KbQJKNY6eavhagVsrncsq1THYHvLZn8dgJJOrDGHnxBd5xlEOWF/dxG5QUSudJb9vccxMnoQBnUOd; 25:hNkgXRT85dN8W904EqJ7G7Of7p/UcGa3B2+0665VMiZeHdv6Loi6vzEKXPX28JzJmzBpw0ZHBdg2ZEvGVaha0iyUvbO1xd284Ki4uaVZd4OqrSEoQZzmW6xT5COt/+7vfkzGzUTOw8lTIHJdWIq1sPk/QmXKREXiK2tCxxpc6x0UPBx5XzQnVDTTEMDDHFmAtVMpwWbRLE1U7qarUjNzum3roW31+OkBL8H+DY/8hZH12DoNpwljourrsK79f40f2OxwDzmwyn+aFJyyO5AICTvwSjbgrE042xKplNCzzo3OD6mTR+pIVgPuAxTddPtdTJcH0Z7WPXZ2xJnNqQYW7g==; 31:jEZdYvoQ9+Cid9d/TtdwKaxQ6sRbfVpQ8d3/2AB74LtsNofIwjxFp2CGLiPAL9qpJA7X0t34us3ztm9CKGK4nuX/wBKKIoleK3CuurebBAJ6VpDN7ILNgfkyVscIqJhBJMPNWfqauQJygvRQaQ9pLldQVUfkOKSStYb9XFZfe5eqnK5IwG2PcRdrO86Ao1ye0ms/nL2upMfkRVMAMKLxqkOmE+zmatbWHFSq0y+R51U= X-MS-TrafficTypeDiagnostic: AM5PR0402MB2769: X-Microsoft-Exchange-Diagnostics: 1; AM5PR0402MB2769; 20:XxlVx8KdRj3TjKCDvHAzoqqgign7cBWjvLJpcAuOlF5ihC913ppOkxzowWUYOhK94qk7COiOwT76o0xHRq2O0M+uZtGB+tDDtCXww2bfov48YcyEi8BffG5JE2Q8wq9C3g7RwEwcaLTa0WeP+stSj3J8rlkRdiTM33yaUgyHNH50DKovnmIzKaFucxVEqmyYyMu9FTckvv8A4lMqvXBVYUJRbUGJJgMR+yC3kMw7SydjX3nEY1j7R3F5wR9PEO+CtM1flZl/svqU/Gg++GddgPOQmmq2cpmiUZc5Fy4i5A1At6pOIwS7oRWHeajmpF1H2lfGgGgndwCCbgGz1Uo7AIJRvYG+uwdZwiFECjHmZ9bCQ6BTQVQFPugAUVZ4F+F9JGTqv4CYKXsi0J0ogwrG5xuPLnkBWNm+wi8IqXBWoE36jiL6oiRQcQW7SVAldeBqL3oROlSBQIoHwZEoy9+nJumCXbLtzk8dILIxw6ErR225rD/9hJ5XB/gM8zWn0vkb; 4:ORvQqkhlYv83ysyLwWD50RALbL7zu9etR0ekF/ta5dfI0EvbPqN1moQkOAmiGkv9UuWk1arSjqNjJqS8rAh8pevzp37zt/4PsN3FbXtcku8aZV44yK5mPdn0fjfPJojvKd2MnQdeHBhYEFLYyA3MX2MP/q1LQxhTHb+gGNs0l7+2TYMMuJh3cgXkC8Kgqf1VONjdrOZwisjK7DPAg7bKaUUEC909bKWjvVO3jLaxsGZqMyh9SpNlnBBhdlC2naLJo8kHxOltHZjWhKxlOWldBYP08rzMnJAEbaMkg+MPybCe2cgcJ9PVHESre48/ZfJVj+R4pfFlA0H2/LjM03cyapNsDk80cBF6383FsJrIdzU= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(3231221)(944501321)(52105095)(93006095)(93001095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011); SRVR:AM5PR0402MB2769; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0402MB2769; X-Forefront-PRVS: 0618E4E7E1 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39380400002)(376002)(346002)(396003)(366004)(39860400002)(199004)(189003)(229853002)(69596002)(97736004)(3846002)(6116002)(4326008)(26005)(61726006)(23676004)(107886003)(98316002)(2950100002)(52116002)(106356001)(95326003)(2906002)(6862004)(86362001)(93516011)(6246003)(5660300001)(316002)(68736007)(122856001)(7736002)(33896004)(9896002)(42186006)(53936002)(305945005)(76176011)(16586007)(5820100001)(61266001)(47776003)(59536001)(8676002)(8936002)(105586002)(9686003)(55446002)(186003)(81166006)(81156014)(50466002)(386003)(66066001)(59450400001)(53546011)(478600001)(498394004)(55456009)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0402MB2769; H:mail-wr0-f175.google.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTVQUjA0MDJNQjI3Njk7MjM6dDFFRGo4cXB5WE1hN0pzSHcrd1d3dm1r?= =?utf-8?B?Q3BVL1psdTBEZ2V6M1l6Zm9INjEvNFNGSGRabTJOaGxlOVNwRzkzdGlrR0R2?= =?utf-8?B?VWhpamVRS2Y2SmJqd2k3aHNCWkZ3ZGVTNTgvZjRwckZTOFp0NWV2bkRCeUpo?= =?utf-8?B?Q1JQVENCcU5Wa28yMWoydmpCYnZNTGVIOUFDMUVhM2pQWlRPckQ3cEplMXdF?= =?utf-8?B?b01pODlMYUJvUG43K2FwT0l3ejA4dzBEcWlBRTh1NDlJc09HTG9INmNlOEdk?= =?utf-8?B?ejVOSEgzaFo0SnVpMXAyYUJIOG9JYWE0aVlZMC90cmlRVk9tMDB0ZG1LeCt6?= =?utf-8?B?SStCRzNMY1pFbWNzaDdIWndJZFA0ZzdWbFd4elF2b0JTclF2V0RRcWN5M0Jt?= =?utf-8?B?bHY0NC8xbWJ5YnJLRkt5NWdWMEpLcnViK0pYaWlveFI3T2FxL2tQYytzUXNO?= =?utf-8?B?NXI5YVhPMEhVdUdHNWFZQlpXc21SUXNPVGd0VzAyVFl1em5adkUyb3VXU0tF?= =?utf-8?B?bXdMcmZVT3d1NkpUSkFJdHQyYnhtdVN1NnJRQ25NTWIzMThnS25KejVMM0xZ?= =?utf-8?B?ZDk0K1htV1RncVVXK1R3dTg3NjM4M25paS9sTjJPZEhxZG84STdPYmZ3YnNy?= =?utf-8?B?NURISkY1dGtxNXhjVHJOT3JzT1BGNFhzM29nYmlOK3VtMUFrb0dOZzhPVGtJ?= =?utf-8?B?MjZpNkEyYzlPazg0ZlM5VjQwano5SXZXczZpMldud0VydmY0QmYrN3NKb2NF?= =?utf-8?B?VFViSDAvSGRvMFltdVAvMUpPUkhjRXM2QndLTDBna3kwTXo4WWxDdERBREow?= =?utf-8?B?RDBYaXpYMTZsT3puMFYxTU9FY2YwbkhvKzY3WDBqNDhHR1l0RWVselk1L0lC?= =?utf-8?B?SVhJR2FrMHNmQ1lFTmV6SThWd05FdzAyRGkxWm5BOFM4QWQ0VEdQY29DZ2dZ?= =?utf-8?B?MWI3SVhIVlg3TzJNQS9pV1lqZzcrNVB0MXhxT0ZlU0srMGorOStlTDNaamJG?= =?utf-8?B?bGlodXphSXpkQkd1TG4yVEtkblVySUJHK2pqblMvWGgrK2hldzY4aTVhekVz?= =?utf-8?B?OENLak1UWEpGTUxIMEpwYnBCKzRYZ210cERTSzIzOFdBZ1JxSTFSQzM3OEZ2?= =?utf-8?B?STRGY3IwZndyMUx6eTJDMkpGd3ptNFc1Z0djL3ArOW5rYXJZd2lhSG9Dalp6?= =?utf-8?B?OWJhQUFuT1NWb3hPWjNVNTZtcyt0Q1p3YUU5eVN2c1BtcFFDVEhvVVVFaGho?= =?utf-8?B?bEpsaXdUQnRsTHFVT1kzYXQ2L29OOVR1cmVZVktYZ3ZmWENGdE11RzcyR1Av?= =?utf-8?B?VXgraVp2cWJYWUxGT2p2ekJpZXlBYUdEdUh6TjRFMnlKVjJlWWRkeVpZODF6?= =?utf-8?B?NjVGeisvVDlJMHQraEMwZEhpdGd0UXZpblVMUkJEa2dKc2pCVG1PV0REYWxD?= =?utf-8?B?V2Mzbkk2cVp2SnB5em9kMXBrc0hOc1RmT1BQYWdQRU9iWWpCT2wzL1RIQnlY?= =?utf-8?B?Ry9tT3pRUkxIbmJmRmhnaWwyRjYyZTRwSUkzd0VyTFlLNXcwRkxpUHFUdFZ0?= =?utf-8?B?ajcrcjd1RzJveG9hYjR0eFBmQnU2bi91RS96MnVyUm0vQVNDN3U0TzdVWjZZ?= =?utf-8?B?VU5TYmdsbGkrR0NDcms5eVRCTU9ENUdTQndraTZoOHpUbGliVWsvWTdVNnhF?= =?utf-8?B?YWVCY2ZyWnVjbGc1TUhpWnU3RmVKalVJLzFhTXdadERrejdtdUNydXdHaXdM?= =?utf-8?B?QWVFUWNWT21wT2ZnMHpWalJXS3cxdGJreTdWUFplcElXTi9Ed1BkTzVldHRu?= =?utf-8?B?d1hsVVBjNWNQbFdzTXBMeTdNWEFMa1lNdXQwM1M2Q3krTFNERENmMXcvdmRU?= =?utf-8?Q?jK9CZxzwF/Lru/i+0ba6xbz2x6mKFXKzRr?= X-Microsoft-Antispam-Message-Info: x1TnaGnCHaATLXcj8HS0AK8Pb/kkiOpOKrOsD2Wg5zN7ngGban+UQXrijvG/COsX16zCQc68MKlVdZmfeBemhIg7efwxT3sw2zxRTwDZXPBpZ2Iiio/g3SWi5+9TB/x9NWdPur2ZChANuHriE88WKDIc55kAyUAl1KZhdhYIBYNzpoIntpw2CCObnxwL5F8X X-Microsoft-Exchange-Diagnostics: 1; AM5PR0402MB2769; 6:QCpPq6L653lOghynAT58mI/UFs/ycwPeMgo27+qv49fQEZ9cZwUEbj5PSmgzr+E8tGbgKJCFag1fzwQenTpCXY+T/P2Zv8ZLZdsAOI4F8iTXQzhTF+we0/Qv4hB7eL58ZMgacfdeuNYA+sB7M+TIn8glPZifZ7SzOfWN5k7JaNV7VCCnXF6iIbjt8NDzyG1HGUVyxTTHgSQRu6aESDSPH4CwTejjNE+1ruNNi6jSow40MuDI0QuWSbLYXXSNpFoCDRC28c4wVEBla3vXHjWnozXXvdvzt9NzecanCOM7+QG3LHGoyYfKE7QseMV2rw3wLa9LHuCm6NYYTNpK2+9k9KzOlPt+Wv0TGdVHWLVjnSzpPN5Dz7PNb9NStN9psU6ZynredYoTa0fWxo+lku3OzfNjXxqQI4IaN7V5Mh1nNbBHBNXchTc4TTkXxZp2JGvLSVj3BNOUfZ6vqHJISz414g==; 5:BNAngSstxguKiR+9X5wpYJP8OwOJ0Kqp8vHbzdbDjYPwx9nRJu4s8vjCw8mQxjaOlWZ/7kIzxof0C2u96AQ1xjX0pjTpCPxjDI2Sa5Ga+dNHoRLBj0n+oqXCB0DjaUQULI7CSDLTAkBrFCxsnF7r5TCV9R2w+SIXtHkcdHV1Wvk=; 24:9l/y0loyb0wGXUNV3KnhmF4DubqumwOy51Q5TR3GWRhSGQTIM1WiUbhX2t72lbNz2lxHoSruv8rZnnzBqOcl4HG+pm8Cciow+hnpyp/4wSk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM5PR0402MB2769; 7:A/JQvOYxdy6TC3J1459oqLAgGIThhdSnP6yhgQFkMrBL4/z/GoxJYBuI75kU6WeUfhTpFAlo2N5j181cmd8CMuNnRKIJuTuSpDFLII3QngvTGhmbahEJPoIeOLuLLD8goYrR5AUeoFw3SjF9xif4tM5ek19jZPc4UKGMTgSBJ1wvO50fiofsGjB3brQZRJRtYOAUlFQ0xWWxH85AdUO0FnOQSEX3/Xs5lu2EtbVnK+yPnAxQeTbxf3U13D/MVUqr X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Mar 2018 09:10:49.6520 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fc00bad0-1ec8-4a3e-70a1-08d58f0ba3b1 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0402MB2769 Subject: Re: [dpdk-dev] [PATCH V2 2/5] Add Intel FPGA BUS Probe Code 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: Wed, 21 Mar 2018 09:10:50 -0000 On Wed, Mar 21, 2018 at 2:37 PM, Shreyansh Jain wrote: > Hello Rosen, > > On Wed, Mar 21, 2018 at 1:21 PM, Rosen Xu wrote: >> Signed-off-by: Rosen Xu >> --- >> lib/librte_eal/common/eal_common_bus.c | 14 +++++++++++++- >> 1 file changed, 13 insertions(+), 1 deletion(-) >> >> diff --git a/lib/librte_eal/common/eal_common_bus.c b/lib/librte_eal/common/eal_common_bus.c >> index 3e022d5..e3bcebe 100644 >> --- a/lib/librte_eal/common/eal_common_bus.c >> +++ b/lib/librte_eal/common/eal_common_bus.c >> @@ -87,7 +87,7 @@ struct rte_bus_list rte_bus_list = >> rte_bus_probe(void) >> { >> int ret; >> - struct rte_bus *bus, *vbus = NULL; >> + struct rte_bus *bus, *vbus = NULL, *ifpga_bus = NULL; >> >> TAILQ_FOREACH(bus, &rte_bus_list, next) { >> if (!strcmp(bus->name, "vdev")) { >> @@ -95,6 +95,11 @@ struct rte_bus_list rte_bus_list = >> continue; >> } >> >> + if (!strcmp(bus->name, "ifpga")) { >> + ifpga_bus = bus; >> + continue; >> + } >> + >> ret = bus->probe(); >> if (ret) >> RTE_LOG(ERR, EAL, "Bus (%s) probe failed.\n", >> @@ -108,6 +113,13 @@ struct rte_bus_list rte_bus_list = >> vbus->name); >> } >> >> + if (ifpga_bus) { >> + ret = ifpga_bus->probe(); >> + if (ret) >> + RTE_LOG(ERR, EAL, "Scan for (%s) bus failed.\n", >> + ifpga_bus->name); >> + } >> + > > Just like my comment on RFC, I still think this is not the right thing to do. > I understand you want a case where IFPGA bus gets probed only after > PCI bus is probed. > There can be multiple ways. Two of them which I can quickly list > without much deliberation: > > 1. A framework which can 'defer probing' > So, a bus can register for defer probe and its > check_if_probe_available() function callback is called through > rte_bus_probe() > If it returns OK, its probe is called, else it is added to a defer > list which is called once all first register buses are probed. > > 2. Modify the priority in RTE_REGISTER_BUS and make it as an argument > or a new variant which can take an argument. > > It is not ok to change this function specifically for a bus is because > this method is not scalable. A cross on my own comment - I know vdev is already doing this special probe but if we have a proper mechanism we can avoid that as well. Or, continue to consider vdev as special :D > > Is there some specific reason you would like to stick to this approach? > > [...] > > - > Shreyansh