From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0044.outbound.protection.outlook.com [104.47.33.44]) by dpdk.org (Postfix) with ESMTP id A3B0F7CBD for ; Mon, 4 Sep 2017 17:13:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=zIOYDvPB1AALlSj6B3M/+1Csf/4pADqGxkuC1czQs7o=; b=JNLINR2xaEWOCMYAUt5UapFwOHfAyki94AMtvusoZSuYHgZXo6B70xdSYBpyNZCGI44KJBHSGUIQJ1z0Y6sqaP66VrspvWgEssilB0+btxizf2JAHI3P1qWHI62Fz5TPA8wd+JAiDBwh3m3WlkZRUT3mGjYYG+9L8KG+bK8ZCzY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Santosh.Shukla@cavium.com; Received: from [10.89.1.1] (14.140.2.178) by DM5PR07MB3098.namprd07.prod.outlook.com (10.172.85.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10; Mon, 4 Sep 2017 15:13:53 +0000 To: "Burakov, Anatoly" , "dev@dpdk.org" References: <20170814161059.6684-1-santosh.shukla@caviumnetworks.com> <20170831032618.7120-1-santosh.shukla@caviumnetworks.com> <20170831032618.7120-3-santosh.shukla@caviumnetworks.com> Cc: "thomas@monjalon.net" , "jerin.jacob@caviumnetworks.com" , "hemant.agrawal@nxp.com" , "olivier.matz@6wind.com" , "maxime.coquelin@redhat.com" , "Gonzalez Monroy, Sergio" , "Richardson, Bruce" , "shreyansh.jain@nxp.com" , "gaetan.rivet@6wind.com" , "stephen@networkplumber.org" , "aconole@redhat.com" From: santosh Message-ID: <1856034f-15c1-36e2-8b26-952a584bc982@caviumnetworks.com> Date: Mon, 4 Sep 2017 20:43:34 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Originating-IP: [14.140.2.178] X-ClientProxiedBy: BM1PR01CA0101.INDPRD01.PROD.OUTLOOK.COM (10.174.208.17) To DM5PR07MB3098.namprd07.prod.outlook.com (10.172.85.8) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d8b7ca17-8a2c-43f5-8ea7-08d4f3a790c9 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM5PR07MB3098; X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3098; 3:/ViC1C8yvqxwCEZqjr1ysDDxsNGTTOocG2I4EzVQiQ66MeuLlzQSWGXq7I2wY8T/djIjEY4hC9nr2SxpIrKMkHkMjaCHwL02qEAmPbEVZP81FyWoq8D4wSmaByuGSrqowonMsO81LNvlxI/j1H0BotO5qhfMROzJeOduLrNwhvEA6TIyIrFfgc5vpYcVRt7jLAAV9mQ5R+VnDYxAfdW+d/VRhrZCmvz9ftbFXLMGuBoZvtfTtcGrpGnoqMkeFq3l; 25:OHJQrejEuL0aFg+of2BgEa8zplJVK1AjokHZoQYEKrXOmnm/1ehDlI3kc2VwVZeWZ2CtABWnnJ2adDY+5BEaF1AFdZTy4rkkc+VgDgwSSGEioLOc7VxUoeWF/lngwSgpuEVDAajWfzivR1llVgm7L4nhTA0rWzNHn1mvJwHqICiKuiuvZiHbHt23PsEJUOYz0XETj61phQsvprv6SIysPq3i7/ecazkuYgddbt0VugGkh7xJoPakO5d3hE/QtTKNTlBG6YWD9gCr394S5MSl2AIuf4xPOrXHxizd38H09en11mrtrxQSxFSs9QXpsmnGC40KJdnWpHIK76Wpcywzag==; 31:1p9Sxp9tmw2J/VT9yZUgoU2ZgRAZr8eQifClnD8NS7Ix+/QvATPqRpMtaQIQT4z6JZ47rvA1qTnta/+ZB0Q5O9G42XB3i8SZX35O/C7Fqd8Zky4IM6y91h1pzu7w+OI/rvNFvJXbE+ILxlH6zC3qwq8CFZjX36fEr0SFA91PgNjB0bjiOcVLF1pLQK7iEip7rX+oolx5DUbAcTrvbVwJZBbZFANkkZspZKYYXhrylPg= X-MS-TrafficTypeDiagnostic: DM5PR07MB3098: X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3098; 20:ZujA41SSAK01h5Md7qR3xizCiycU7TbKDJzuaA+SmpJ/4wMk4A4wPIEWzuqZ3/vskSUdn5wjfdLnWgLJIs1nXQumBCyAnF53giC4nXHRZxANG+rlmM3FRKdUUbCJDCH1OFbZ/la0gFoTEAIHIXzQVT9sKn6TQXR21hwFk3uGuqtFllzukOtkWjmwNJLhGiIVxfqJMJfR2C/WWqZdy8cQLLe/59KcsSuJjTmYACyhf9AzSKpsfOVeyomPSp3CSocgQvbprvFna/GhS6nHATIib45mDkpHOATPDdFi95hFCCoC9qMi7ylv+iDEci6HsPleHlDwLUX/yTL52G6q+6H7peGmdCRYhlpzmRL/7eDhGt6/V3Sa+k7mwJXkAsvUPIhVU6SN1gRsyRmpD0XVGuHnZMrjfu9EItljbJvAG0skB6TV2VVB2QVshLN73YtnFxjGwFNILeE+29QwacGRrOGF//ygekTL+4cIZT1qLJnmu0xn92mR3PHvRAXfV3XUoumbX2kDaW5U9mdkrjPGHaHG9kieDiZL+yp1DDSm59+Nf8Vji7kkfinsO+4W9AjCupHHVzt70CjWGF2eu/1vFWsS9DE0TTsXYhPXlD9YTAOdcew= X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(3002001)(93006095)(6041248)(20161123560025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123564025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM5PR07MB3098; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM5PR07MB3098; X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3098; 4:AP/ZlhtppwfmE7M3xcUqjZTbecuIsUhieqwJwhXfmQFxVXp9cGogG3eZy6FuSU98xDPHrz2qQEAeLpUjblYjEFoJnVlQUM28VWG4yLGro4p2xE+SpNpwzoaHFTSdkFD0nhmDJ+BtFX+tm/hgtmU9oLijM7/im0kbc4RCkDYvJCkjgmygNstu+KUH5KdxbS0pz2VYD0WMEv1r46BbEVfdfezuWCU/rpWIOojPxpas/RzTs+lnCaVYSWwh3Z+4lZuQbX1Fr/1mNPDgA4oUvLOph9LirawJ/vmq97yTo8e9NdJ3pROYUENYgjHcNq2MWBmwPEv9OK6N+/5fzrN7fifvlg== X-Forefront-PRVS: 0420213CCD X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(6049001)(377454003)(43544003)(189002)(199003)(24454002)(97736004)(230700001)(90366009)(53376002)(53936002)(83506001)(6246003)(4001350100001)(5009440100003)(6306002)(65806001)(8656003)(189998001)(25786009)(31696002)(68736007)(36756003)(3846002)(54906002)(6486002)(86152003)(65826007)(966005)(66066001)(5890100001)(65956001)(77096006)(93886005)(47776003)(33646002)(72206003)(64126003)(8936002)(101416001)(42186005)(2906002)(5660300001)(305945005)(7736002)(50986999)(2501003)(54356999)(76176999)(53546010)(478600001)(4326008)(50466002)(31686004)(2950100002)(23746002)(7416002)(106356001)(8676002)(42882006)(6116002)(6666003)(81166006)(229853002)(81156014)(105586002)(110426004); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR07MB3098; H:[10.89.1.1]; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DM5PR07MB3098; 23:ocfMny5u/1tffN2CVgd1fp4H1L1CS5Y0WU76f?= =?Windows-1252?Q?9oBUISr4niZYJw6d4IvyogEw6Q7ovWN4te035nwT+yzKa+AIQdZMC6WW?= =?Windows-1252?Q?66BEy3R7wni2PdXzjZQZ1IcLh61AsFl/ZV4TGlSVhwo3VCEG7nMOssHM?= =?Windows-1252?Q?eHkhxgEF0yXW/iQ8tBv33YzNXsb804O+3p/A2J2Ek5gs4JhMubHnPXl9?= =?Windows-1252?Q?CEp2g+ED2RJLFLNXFzCoF2igAaLENhVkqoNnst5f1YEF5iclaOBYC2Te?= =?Windows-1252?Q?TfcuFTnyDdqxfX8Ct5/82yiapjqtGyc7oYyoRwemiyzHCEy5HtzQuCaD?= =?Windows-1252?Q?+EOJKXFtCBTydnxjKm1B+mSc+wAzqiMNE4tvNodpBRWPfGzDFYJw2XmX?= =?Windows-1252?Q?KKGoV7i3sqxBKmssBl9VU8RWsVQnp/owWRWOFZW7qliLcBk8dVU36/uv?= =?Windows-1252?Q?rLIrLB/Tru680nLWDDx3wN9dvmJUoW1pjS+IZotbvLlZUEI+0i8Zp+fF?= =?Windows-1252?Q?plC+6/6rjtChq/vsUE+eM3wEpuLNpzLNoHlqi4kni9dxOZsOC0+Io5Dj?= =?Windows-1252?Q?8Y1NM+5s2+JbKZws9gWUcSbvIKs5Gr5q4+YYuzaWQ6IjlwGMu/VNEiL2?= =?Windows-1252?Q?caMQuuN9wzufxCyAU7i91m7tn6HApBWBI+eJXs3Taog61MhVamnbbqbM?= =?Windows-1252?Q?NxGZk3tu7fTxcDrv/HO/BBLC6AibP8ip/r52eg9tuagh+nU/xta8zx5t?= =?Windows-1252?Q?6MiUW5XmSgpI2d38fu9BtG4brcjN7agH28cFsSGtyymLZRT2U/uQSM2P?= =?Windows-1252?Q?v9Eb+6psKu+LySDMCNxP3DRzaGmQ/m/c68waQA1wbzWP/rkX6+MWU6qW?= =?Windows-1252?Q?t0I/UOK8ygnfSJjdXT98xNwyU50+Nl19IqPhfjSJt3gR5iRDCj/2bEBl?= =?Windows-1252?Q?wsT3mP+ujDU6y19QVDB50BQNaqpkiOIFTK7aI35dq9KxOHj1z3U9tInv?= =?Windows-1252?Q?ko8SLexmnIKd4EkvnTGJvGNfB42FfBO6zQuo+4DHu6PSSil+kEKhMOo7?= =?Windows-1252?Q?cQn1W3Aci/8jOP5uMhaOegMVTgGXicINdMNha01X1c0ASsbFXRmtt4Rl?= =?Windows-1252?Q?p4je+FhSjiGta5J4Nx0tzhfEdwB1lazH7zLJGm6WqMvOpYx75CFhE/Cg?= =?Windows-1252?Q?+GxpmsFMjlRkw4pH+MW5+MuZbX8VU3zqvCovTdm6hlgGMexOH4Ok74LS?= =?Windows-1252?Q?EO5g723LIhv9f7BKSYTunkbnDr6L4aCkbPvRu6ri6MtUhsJYLrOzGTqy?= =?Windows-1252?Q?ARLUO80R7GAe1VQX3ig2hCmOn/VW42svbT7Fs4UA1EkH2zmuUBfXkhMS?= =?Windows-1252?Q?8Erh0SMOrfo8yYGdgysRze4fsFTv+w2srSy3GBrs+pQLFoYvtERPNQyM?= =?Windows-1252?Q?fYuljf5zn3UzlCr0hjPSB/fjpTNXkTlbUs9iA/KyokYr6OiflBl6cujY?= =?Windows-1252?Q?PF3cxPpBPyl/iz1wAnuzyQ9lKB+suJ0KQJp9/tIwkGniLaLR3aj2rpQA?= =?Windows-1252?Q?FlvfVNxkF6ra4VBl894mqHkrbkbm+4DbzGvvgETuU7+3faVGRCuvryk/?= =?Windows-1252?Q?6NgPA7HR38ULnHoqrl9PidyU0ld1tf9Uy+/1pgJlllvSgV2TEJzzT4Xb?= =?Windows-1252?Q?ExFV7Q6BPC97fbfI1ycG1AdtH/sPEnqe4YFOez31KgxtJ2cQYD8?= X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3098; 6:7JOXu1C/nANaeqRqW5SJuLN/57W1LBBQQLPaZaSMSL3Py+pnDgDW+lDbIEs6Iup7MrD2Kh5eqGqONu2dY3EkDI9Q5dsJ4LGHdNz2p8JjYhHW1kC3q3NV5haJ/MhdUH/UM95EsWzGuBY5k57uztVwyrHYiQg1BZXe1STzFEE1W1wVtXJvttfxIZUlcV0ERNba0CTywSzn4ncIo+cFprS27OQENB43E1l1X7buYeFT/6ZYgsaw9iMzlRR12hn0sQJwlB4Jxgx5OVDZ1sgp6fbOZ86yjcoNrWh4M1bHEXCo3N2CrOHoQLp5iepBLQtbJTmcF60mXf7Buv8AzXiSY2zzAg==; 5:qCnapYaOULCRAb7DdK9cP/v1mlLnsuhMn0SI8VDAcW1PXtC0wxznRPCoshCZcSpXD0llRbFL4LmHBGs/bm/d3Li1860enYpIdeGtXylt6HOp348KRjYSj53YdfSh/XJ4W/oYgL9aUjRisqUeDrqHKA==; 24:Kq6xH9PZEmCkMJSnYJeOIO5LMJokTxhPN+Xeg2MBoNGBdEggH2irZI7WZyA6zi3L1xGWpvVQGI/cvBw0W9Y0oo5c5kSX2CHF3OEVPhjqnCs=; 7:d++fDt7NzwIluNSU2QIooISwwKW78u+HlpQQKBKqhAzwdsB/Kc5Joib/Qw4nSNGFCf1kggnggyaHrSm9JttMHb4mHVQDYf6MUzL3yRfqcohIdhwfelicVHPaQzc6oZFQK2HBtBwzyQwrY6flzSYV0Q9KxKtrrR1JrTc7Q+QRkYKf6uPgVFYiMREXQ7Lbx+hl6cnrwFWe3XU2794EPXdfvSXLgM9UI3QYOrfT57XWscU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2017 15:13:53.3579 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR07MB3098 Subject: Re: [dpdk-dev] [PATCH v7 2/9] eal/pci: get iommu class 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, 04 Sep 2017 15:14:00 -0000 Hi Anatoly, On Monday 04 September 2017 08:23 PM, Burakov, Anatoly wrote: >> From: Santosh Shukla [mailto:santosh.shukla@caviumnetworks.com] >> Sent: Thursday, August 31, 2017 4:26 AM >> To: dev@dpdk.org >> Cc: thomas@monjalon.net; jerin.jacob@caviumnetworks.com; >> hemant.agrawal@nxp.com; olivier.matz@6wind.com; >> maxime.coquelin@redhat.com; Gonzalez Monroy, Sergio >> ; Richardson, Bruce >> ; shreyansh.jain@nxp.com; >> gaetan.rivet@6wind.com; Burakov, Anatoly ; >> stephen@networkplumber.org; aconole@redhat.com; Santosh Shukla >> >> Subject: [PATCH v7 2/9] eal/pci: get iommu class >> >> Introducing rte_pci_get_iommu_class API which helps to get iommu class of >> PCI device on the bus and returns preferred iova mapping mode for PCI bus. >> >> Patch also add rte_pci_get_iommu_class definition for bsdapp, in bsdapp >> case - api returns default iova mode. >> >> Signed-off-by: Santosh Shukla >> Signed-off-by: Jerin Jacob >> Reviewed-by: Maxime Coquelin >> --- >> v6 --> v7: >> - squashed v6 series patch [02/12] & [03/12] (Aaron comment). >> >> lib/librte_eal/bsdapp/eal/eal_pci.c | 10 ++++++++++ >> lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 + >> lib/librte_eal/common/include/rte_bus.h | 10 ++++++++++ >> lib/librte_eal/common/include/rte_pci.h | 11 +++++++++++ >> 4 files changed, 32 insertions(+) >> >> diff --git a/lib/librte_eal/bsdapp/eal/eal_pci.c >> b/lib/librte_eal/bsdapp/eal/eal_pci.c >> index 04eacdcc7..e2c252320 100644 >> --- a/lib/librte_eal/bsdapp/eal/eal_pci.c >> +++ b/lib/librte_eal/bsdapp/eal/eal_pci.c >> @@ -403,6 +403,16 @@ rte_pci_scan(void) >> return -1; >> } >> >> +/* >> + * Get iommu class of pci devices on the bus. >> + */ >> +enum rte_iova_mode >> +rte_pci_get_iommu_class(void) >> +{ >> + /* Supports only RTE_KDRV_NIC_UIO */ >> + return RTE_IOVA_PA; >> +} >> + >> int >> pci_update_device(const struct rte_pci_addr *addr) { diff --git >> a/lib/librte_eal/bsdapp/eal/rte_eal_version.map >> b/lib/librte_eal/bsdapp/eal/rte_eal_version.map >> index c819e3084..1fdcfb460 100644 >> --- a/lib/librte_eal/bsdapp/eal/rte_eal_version.map >> +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map >> @@ -242,5 +242,6 @@ DPDK_17.11 { >> global: >> >> rte_pci_match; >> + rte_pci_get_iommu_class; >> >> } DPDK_17.08; >> diff --git a/lib/librte_eal/common/include/rte_bus.h >> b/lib/librte_eal/common/include/rte_bus.h >> index c79368d3c..9e40687e5 100644 >> --- a/lib/librte_eal/common/include/rte_bus.h >> +++ b/lib/librte_eal/common/include/rte_bus.h >> @@ -55,6 +55,16 @@ extern "C" { >> /** Double linked list of buses */ >> TAILQ_HEAD(rte_bus_list, rte_bus); >> >> + >> +/** >> + * IOVA mapping mode. >> + */ >> +enum rte_iova_mode { >> + RTE_IOVA_DC = 0, /* Don't care mode */ >> + RTE_IOVA_PA = (1 << 0), >> + RTE_IOVA_VA = (1 << 1) > Hi Santosh, > > No need to set values explicitly, standard C will take care of it. no strong opinion, change queued for v8. > I wonder the purpose of "don't care" mode. It's not used for anything but cases when no driver is bound. All the libraries (e.g. rte_malloc) will only check for IOVA_VA mode. Can't we just used PA in all cases where IOVA_DC would be applicable? Indeed policy is to use iova_pa for _dc case, but we need a way to distinguish between no device found vs device attached (if attached then decide upon its iova scheme). For more detailed info pl. refer [1]. [1] http://dpdk.org/dev/patchwork/patch/26762/ > Thanks, > Anatoly