From patchwork Fri Jun 8 09:40:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 40814 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 705742A62; Fri, 8 Jun 2018 11:42:13 +0200 (CEST) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0075.outbound.protection.outlook.com [104.47.0.75]) by dpdk.org (Postfix) with ESMTP id 785031AFF for ; Fri, 8 Jun 2018 11:42:10 +0200 (CEST) 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:X-MS-Exchange-SenderADCheck; bh=dhZoBUB0euLJlHaqCjUFmy27Jw2GsTnkYH6delhW8Tw=; b=Jl4tzAR3t955LzTnfMkVFa+9c9cFaIaXQmNoX/p6BkAmJlm3GgCWjN2tYNqSkTP4ZaP5Ns7F/nFSGq0CAzLK/+jOFA84a10SI4V+BrKbCDPYAri50SenENRMCodXcFrNCO51UN17wcO8Vil6Y3TSa4NAEBLMtRoxmCtatWOAShk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=hemant.agrawal@nxp.com; Received: from bf-netperf1.ap.freescale.net (14.142.187.166) by AM2PR04MB0755.eurprd04.prod.outlook.com (2a01:111:e400:8411::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.13; Fri, 8 Jun 2018 09:42:07 +0000 From: Hemant Agrawal To: dev@dpdk.org Cc: anatoly.burakov@intel.com, thomas@monjalon.net, Hemant Agrawal Date: Fri, 8 Jun 2018 15:10:11 +0530 Message-Id: <1528450811-17729-1-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1528179911-26675-1-git-send-email-hemant.agrawal@nxp.com> References: <1528179911-26675-1-git-send-email-hemant.agrawal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: SG2PR06CA0172.apcprd06.prod.outlook.com (2603:1096:1:1e::26) To AM2PR04MB0755.eurprd04.prod.outlook.com (2a01:111:e400:8411::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM2PR04MB0755; X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0755; 3:eyD4t2N88YPZv7jYNe3soVkfH7xHVZd6I+zezK5bzWLE353yeP/08E3/IaMMUrrEVDZSZYfLVCFjNFiFgzGN0fdmt2ZY6RJ05RjIcfdu7F6k5DhE44lhnpcDPMCLhSGi3OXqOQAYgpfo1jSkZSw9NFQS3XXYfqgJeDggkPA+W2VKberro7+LI3FSqlql3+ThC+i5toyAklgY76P4ZpVm6LUilLZb1uMHJEMM7Rrbw0j9dc+WwBk0lbYv7eC7BP4t; 25:q9Qji0LBXJl535sz+6qT8fEWFAKVnQtafilHEjp16Nc0tBFLetqzj6xwfIPn04cC5XUmwIpqOOEm+xmlk9y3Y2fhxE4hWf23WGsK/we3EMqmfH+ebK9GHsH7aX8HC1Z/PqBTBd8q3WxaKkxdmHjSargeNXgL2uZejZyXsdKut4TOhMn2fiBkGV3N7Trziygd8BLuGmIHvedeUKmi7nnqbXWUdrMI8DuUlP+Qigzl5C3tD6ZCFMEsrlJcuvOqZNOtz0GjedbGiOIdDORmZwtZ0GUVIkwOavMuqnaggpNlTuLdFAW9jWt0KF5mYqAPlUW3sR0xQuf1iScrMCYuDirWeQ==; 31:RtwnvKw3c3dRIAHaiehYg9YLD+nIuoo+yKLkEHUiOC4a9F8B1LPlH8Yjl/GKcKRU6mcbrDXxKxr9Qd5EBc+ZwMoGX07s3D4hPfXZ+6MopcLnGU0EVxwzWzfeR3OSFUSvy+1NW3aFtWcmc98KFkWLE3J5it+1B+7IcCoWNelUnnYS3l/1SvbR+cXPynTQysK6AU9aQ3z3/8aXrHb/qAKPBUZKmno5ITM5/nwhP/wfZ6c= X-MS-TrafficTypeDiagnostic: AM2PR04MB0755: X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0755; 20:wIYe+IVlfswGGaKjyHK6VZT5hrYKXVxcnQV3Vrr84TafJctq1SNrdkmkC2xwvn0fIrnTIG+Mm/dvxnBeLukn9MqcihlJfDbfdA4F18I0IldGU0K+TKPVQl/QpYgkpcSd2hju1BH6F2SmYg13Bf6R39m48Li9C1SnZg+0wWbaGijGa7yKRls+zu7BoaWfNoL70grSO56sACBuAO8KTUbI1AerRCJc9MBwCMdDC+GtnTk9BJvyYP0RWe5eUQpFyJMOMsLLDfYydlwqOaVZAjZTIDVT9xQlaK8e2WD4SLfKwsxd8jJ4Dg/tVwV5bDEHCKr9JUf4jyx5VZcjXC9LW1JCX9mVRslzeC2krMrQ98U+nV83kqky+3Knrx9vIugOUVdfg9U1gVd7lt54Y0ixR0eR7Er4UnIM8LSEGFrYp5Dea0dBRSJ4xKaQl6/xphq4AbzMsPNir/tGHmuG3LoswdSGTBDXF7HtHFjUyMH/tk9ZCE74ntMFel9LvHaF8cV6nPnF; 4:Owt8d5yzTSw8IG0EzsYmJv61GK+NDfEvkOIAfhB64kOSaqGjSRvygBNBZT19CpY7Gdt273E/d7eT/nJ5DPq/n2xvnV8C65VYoBfxHn8HahDByNDve2BnO1YEGqMq/nvBMhR7bA9erFuAQvP6HUN5daeOsJP79YVkBYJEqzsq9YQ4E+6xgkSAFV6Khzj3B7kprFvvC5eqSd4LmFhSwS9wKDDPOorMWU079v0yg2YIvQAl5KMV6qmTeXb1AjI2QgLyUKqshg3g2akxytjJiYN2Re1PJ/VXj93pySKJ4InOV8EYSRbhSg9h/ydMMWe54MT2 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:AM2PR04MB0755; BCL:0; PCL:0; RULEID:; SRVR:AM2PR04MB0755; X-Forefront-PRVS: 06973FFAD3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(39860400002)(39380400002)(396003)(346002)(366004)(189003)(199004)(50226002)(6116002)(66066001)(3846002)(2361001)(5009440100003)(36756003)(106356001)(5660300001)(16586007)(316002)(476003)(956004)(575784001)(186003)(6486002)(105586002)(486006)(97736004)(68736007)(2351001)(44832011)(11346002)(446003)(2616005)(53936002)(6512007)(4326008)(81166006)(8676002)(50466002)(48376002)(7736002)(81156014)(25786009)(305945005)(2906002)(59450400001)(6506007)(386003)(478600001)(51416003)(76176011)(26005)(16526019)(6666003)(86362001)(52116002)(6916009)(47776003)(55236004)(8936002)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM2PR04MB0755; H:bf-netperf1.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM2PR04MB0755; 23:tZGKCz4m0BQdy5IkEal8enRza+yZAZ/nYwJdeBOsN?= f+/fFoYWf5kWW/7zDdU0S/3RwDBBdQfQ5Wjam4l7kWZiU+P/nvppBszdDNtteFGAzxrUYRMWhUhppyjTEMdwbgQQ2iwwu3at/DHcNAD32TT8txNepuQa0dQc3yXD2OohuN5EmezJZAyaUlLgN7pMzy1FHe0VJ4bG67/qnHvRx37A8f0nLScVzBQodmQTUHEWRikpL8jCsT35H8TTPoG5kQS664XXfc5/SgpjmKY5pg9MA66EX8wNQGOOAyUbCbAxwIOdrkhf4hMCDPfXUUYfTh62NdVAAKPrsS/v8P4fbCFv/ljnheFGBqZ8qI3+nYc3SVx46WIag+hiDWYwotMd/KeJN4f68nYf9PRW3i2V6WbYqjAR/bsF4iw0lRKHTws+rMOJXljrMIx1/Pxstu+QndUv6x9cxi4XhJbOwvsphHYY1T1jKcioMCThLnGAipKQM7mzQiF/dV7S6/fnUsvm7aglNrTu2IgKleo37T128tYY+slt+XUrWXx8ltnbm8vT6ElvYiyoO7E95SvBoETE8fiLN+k+RxLqCc/275lO7QmjFkWeXDxfB8z5iAiqYFy3KgzZhN+ZQA/1n59Nw4VVgQW42euBwzLjpIUzn02xhRgiXQYH2LikMn0HPRmJepBS3nwYACgnS+VOZ5WUGTRk8EAEIrpNI5yVi2//EM2w6ZBzF1AkWOr4Ak5d45MpJPFpmYKf+/X1ZbLyF1i/U+rLP413JVgO1OTEJNGLtLFaAVJdO8ixhTqZ/RmlEMTKFV77U3bzauiO7/anDrgnmGuj2iL0KwU+02sdUl6Y6l2hbsxZYrGCRpP8P36jsRyQgOpG6T+oACEEDNhlj6HHy1ppSiUg/I99HZtAij1wHxbD+rGyV/RWkT8u7Q3fJgNWcnMkpuqUBq2Zr29bE/TcJ0ZoWI74zSYkoPqpC7up6fpLHdJZ0S9Fly1NpRbHpVVzphEx8+OOZUthBZJKHRDzfiCXSGvKa0/iJSpIlQH0BhiWveNtD7on1s+uEvkWN3qvDJXObMMpQ5jftwGiPnw5lKOcOYeAp/Tx+8dcde8pUn9mAXjlqk6E41EjZfT64zW9HiJ7HvM2zglZBbxGb2S2fRMzb4gGJtzalSQgdcFi95SofCuppVvfitURP2QQT/Rtukdxvd5W0XmpQ8rX8VY9KzxKYxQJwu6vHN9Jl3aTQZ7xBSC7cqZ9cU6xRLhJ6oLyjqWmj/v4wbSsAxdGMvCGqBhabpIBccw8B5Vlmfcludc4eKVDlm/dxFj//YBreEkUZgoRo8qteFcmiFEgLUEedXzzmtPHbNjB+O00xoGZrvdkXOkZA== X-Microsoft-Antispam-Message-Info: UMbsWSoo6TcZXilMckxueZsbTx/+LFeukUnl3K0ClZelbH8SEQT24ZOziCtoYrKObtu574STE8sOITxjSGgmj+uMuHinZutM1PrdzE61TuPaXuExa70kyWYQtiZLVUR8oWeQXJJwVaxpBw5QKUkhqqNJgliyhL/jiENx9elAO+EIfAQhPKufHNIJccdxZ4Tx X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0755; 6:LFSCzSZV2giaAfqsfapTyR/7Vfd8ZZiV3+F3hS0F/FaCvxv/gT/r3ViAql3WjLY9XkLXxb0EYZleKZbPNWa4fOEY47GwLl4DLnE34qUyh+Pekfl5/TwVYsfQq1S80OSDvd4+fNzcXN5ivnUa5/hNfH36wKF8eNDHCXyp0Eu7FqnlnulHYODcy9rK0+9w4RF5R6ZMU9Csc4HqWQ4A5XRkIgtlZpPuLJSauUp9gbf9ZJZtIlPg8GvnNCHQ50mCWDQUXR6cY04VSO43zqKQ5la6OrYlHqazj/1lVakWV7MgFj1n31YptwL6xD8HClNCR6DkPiWQFiEoyDrO32o6SSA24NXRENG/41niAlnpYoiaAiF42MiIh39oKQykIZvpefWfJioV34Nra38SkPDFIombXz6Y7kLVBeL6Zk0+F25QdSM8gOdE78+lqlmmJSET9IXHIqWDzk2rLg/eRT9HqReQUQ==; 5:lCnNxqb/VRB6DcdnU1E8Hj1zwZ9X+QvB9ghrnAzSKb1gY/pIqj2vX3eG2Vsb1yCkRBToWRJ4ksU0bLifaF/904PB0TB+5ya5Orb0b1bLVlHtjbEL91rquawsfzE7Cj4wtEBRZ9k8jIJ3LLAQtKr3GHqvm4v2iIMgEY4NG/5P1Bk=; 24:i5TaxT8qFcLeo0wnU3lf+CPhy7xqUnFG9zxqlATkqJXibUl9Xf92o06yiMqmdf3mYYQnqi9v/1W43idx+yxsvdQpIjUsdxFUmjVQapgX9tA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM2PR04MB0755; 7:sgN2cHEj7d2jD/ham1dZYrjjs7ogIOsCE5r4jvAYF2fnOYn+5IYZxKYBC+8yL8qEk3uRXQPhsMYHD2ohSB6uq8zJd6Uv7G0yA9YA3mOnHsuMdN3iUlK8D+5w0Wb+XFvkSdiQVjBrpBcqj4rE71XEg62aVOKrCyIjWB9PV8WWDfxie03D/Ge1ubVjjLurRe7bVeUZSDOmF9zcoAp8V1VmXuS4U/GWFLMItuEn9pv72uvqANzNjchHBH48Q1pQutkv X-MS-Office365-Filtering-Correlation-Id: 7e57d8c1-4a13-48a0-b38d-08d5cd241a90 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2018 09:42:07.6469 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7e57d8c1-4a13-48a0-b38d-08d5cd241a90 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR04MB0755 Subject: [dpdk-dev] [PATCH v2] vfio: remove experimental tag from vfio APIs 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Signed-off-by: Hemant Agrawal Reviewed-by: Anatoly Burakov --- v2: remove duplicate entry from map file lib/librte_eal/bsdapp/eal/eal.c | 22 +++++++++--------- lib/librte_eal/common/include/rte_vfio.h | 40 +++++++++----------------------- lib/librte_eal/linuxapp/eal/eal_vfio.c | 36 ++++++++++++++-------------- lib/librte_eal/rte_eal_version.map | 28 +++++++++++++--------- 4 files changed, 57 insertions(+), 69 deletions(-) diff --git a/lib/librte_eal/bsdapp/eal/eal.c b/lib/librte_eal/bsdapp/eal/eal.c index dc27954..33edae5 100644 --- a/lib/librte_eal/bsdapp/eal/eal.c +++ b/lib/librte_eal/bsdapp/eal/eal.c @@ -866,21 +866,21 @@ int rte_vfio_clear_group(__rte_unused int vfio_group_fd) return 0; } -int __rte_experimental +int rte_vfio_dma_map(uint64_t __rte_unused vaddr, __rte_unused uint64_t iova, __rte_unused uint64_t len) { return -1; } -int __rte_experimental +int rte_vfio_dma_unmap(uint64_t __rte_unused vaddr, uint64_t __rte_unused iova, __rte_unused uint64_t len) { return -1; } -int __rte_experimental +int rte_vfio_get_group_num(__rte_unused const char *sysfs_base, __rte_unused const char *dev_addr, __rte_unused int *iommu_group_num) @@ -888,45 +888,45 @@ rte_vfio_get_group_num(__rte_unused const char *sysfs_base, return -1; } -int __rte_experimental +int rte_vfio_get_container_fd(void) { return -1; } -int __rte_experimental +int rte_vfio_get_group_fd(__rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_create(void) { return -1; } -int __rte_experimental +int rte_vfio_container_destroy(__rte_unused int container_fd) { return -1; } -int __rte_experimental +int rte_vfio_container_group_bind(__rte_unused int container_fd, __rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_group_unbind(__rte_unused int container_fd, __rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_dma_map(__rte_unused int container_fd, __rte_unused uint64_t vaddr, __rte_unused uint64_t iova, @@ -935,7 +935,7 @@ rte_vfio_container_dma_map(__rte_unused int container_fd, return -1; } -int __rte_experimental +int rte_vfio_container_dma_unmap(__rte_unused int container_fd, __rte_unused uint64_t vaddr, __rte_unused uint64_t iova, diff --git a/lib/librte_eal/common/include/rte_vfio.h b/lib/librte_eal/common/include/rte_vfio.h index f90972f..5ca13fc 100644 --- a/lib/librte_eal/common/include/rte_vfio.h +++ b/lib/librte_eal/common/include/rte_vfio.h @@ -179,7 +179,7 @@ rte_vfio_clear_group(int vfio_group_fd); * 0 if success. * -1 on error. */ -int __rte_experimental +int rte_vfio_dma_map(uint64_t vaddr, uint64_t iova, uint64_t len); @@ -200,7 +200,7 @@ rte_vfio_dma_map(uint64_t vaddr, uint64_t iova, uint64_t len); * -1 on error. */ -int __rte_experimental +int rte_vfio_dma_unmap(uint64_t vaddr, uint64_t iova, uint64_t len); /** * Parse IOMMU group number for a device @@ -222,7 +222,7 @@ rte_vfio_dma_unmap(uint64_t vaddr, uint64_t iova, uint64_t len); * 0 for non-existent group or VFIO * <0 for errors */ -int __rte_experimental +int rte_vfio_get_group_num(const char *sysfs_base, const char *dev_addr, int *iommu_group_num); @@ -236,7 +236,7 @@ rte_vfio_get_group_num(const char *sysfs_base, * > 0 container fd * < 0 for errors */ -int __rte_experimental +int rte_vfio_get_container_fd(void); /** @@ -252,13 +252,10 @@ rte_vfio_get_container_fd(void); * > 0 group fd * < 0 for errors */ -int __rte_experimental +int rte_vfio_get_group_fd(int iommu_group_num); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Create a new container for device binding. * * @note Any newly allocated DPDK memory will not be mapped into these @@ -269,13 +266,10 @@ rte_vfio_get_group_fd(int iommu_group_num); * the container fd if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_create(void); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Destroy the container, unbind all vfio groups within it. * * @param container_fd @@ -285,13 +279,10 @@ rte_vfio_container_create(void); * 0 if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_destroy(int container_fd); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Bind a IOMMU group to a container. * * @param container_fd @@ -304,13 +295,10 @@ rte_vfio_container_destroy(int container_fd); * group fd if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_group_bind(int container_fd, int iommu_group_num); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Unbind a IOMMU group from a container. * * @param container_fd @@ -323,13 +311,10 @@ rte_vfio_container_group_bind(int container_fd, int iommu_group_num); * 0 if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_group_unbind(int container_fd, int iommu_group_num); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Perform DMA mapping for devices in a container. * * @param container_fd @@ -348,14 +333,11 @@ rte_vfio_container_group_unbind(int container_fd, int iommu_group_num); * 0 if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_dma_map(int container_fd, uint64_t vaddr, uint64_t iova, uint64_t len); /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Perform DMA unmapping for devices in a container. * * @param container_fd @@ -374,7 +356,7 @@ rte_vfio_container_dma_map(int container_fd, uint64_t vaddr, * 0 if successful * <0 if failed */ -int __rte_experimental +int rte_vfio_container_dma_unmap(int container_fd, uint64_t vaddr, uint64_t iova, uint64_t len); diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.c b/lib/librte_eal/linuxapp/eal/eal_vfio.c index a2bbdfb..bc5c602 100644 --- a/lib/librte_eal/linuxapp/eal/eal_vfio.c +++ b/lib/librte_eal/linuxapp/eal/eal_vfio.c @@ -1624,7 +1624,7 @@ container_dma_unmap(struct vfio_config *vfio_cfg, uint64_t vaddr, uint64_t iova, return ret; } -int __rte_experimental +int rte_vfio_dma_map(uint64_t vaddr, uint64_t iova, uint64_t len) { if (len == 0) { @@ -1635,7 +1635,7 @@ rte_vfio_dma_map(uint64_t vaddr, uint64_t iova, uint64_t len) return container_dma_map(default_vfio_cfg, vaddr, iova, len); } -int __rte_experimental +int rte_vfio_dma_unmap(uint64_t vaddr, uint64_t iova, uint64_t len) { if (len == 0) { @@ -1678,7 +1678,7 @@ rte_vfio_noiommu_is_enabled(void) return c == 'Y'; } -int __rte_experimental +int rte_vfio_container_create(void) { int i; @@ -1728,7 +1728,7 @@ rte_vfio_container_destroy(int container_fd) return 0; } -int __rte_experimental +int rte_vfio_container_group_bind(int container_fd, int iommu_group_num) { struct vfio_config *vfio_cfg; @@ -1774,7 +1774,7 @@ rte_vfio_container_group_bind(int container_fd, int iommu_group_num) return vfio_group_fd; } -int __rte_experimental +int rte_vfio_container_group_unbind(int container_fd, int iommu_group_num) { struct vfio_config *vfio_cfg; @@ -1813,7 +1813,7 @@ rte_vfio_container_group_unbind(int container_fd, int iommu_group_num) return 0; } -int __rte_experimental +int rte_vfio_container_dma_map(int container_fd, uint64_t vaddr, uint64_t iova, uint64_t len) { @@ -1833,7 +1833,7 @@ rte_vfio_container_dma_map(int container_fd, uint64_t vaddr, uint64_t iova, return container_dma_map(vfio_cfg, vaddr, iova, len); } -int __rte_experimental +int rte_vfio_container_dma_unmap(int container_fd, uint64_t vaddr, uint64_t iova, uint64_t len) { @@ -1855,14 +1855,14 @@ rte_vfio_container_dma_unmap(int container_fd, uint64_t vaddr, uint64_t iova, #else -int __rte_experimental +int rte_vfio_dma_map(uint64_t __rte_unused vaddr, __rte_unused uint64_t iova, __rte_unused uint64_t len) { return -1; } -int __rte_experimental +int rte_vfio_dma_unmap(uint64_t __rte_unused vaddr, uint64_t __rte_unused iova, __rte_unused uint64_t len) { @@ -1909,7 +1909,7 @@ rte_vfio_clear_group(__rte_unused int vfio_group_fd) return -1; } -int __rte_experimental +int rte_vfio_get_group_num(__rte_unused const char *sysfs_base, __rte_unused const char *dev_addr, __rte_unused int *iommu_group_num) @@ -1917,45 +1917,45 @@ rte_vfio_get_group_num(__rte_unused const char *sysfs_base, return -1; } -int __rte_experimental +int rte_vfio_get_container_fd(void) { return -1; } -int __rte_experimental +int rte_vfio_get_group_fd(__rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_create(void) { return -1; } -int __rte_experimental +int rte_vfio_container_destroy(__rte_unused int container_fd) { return -1; } -int __rte_experimental +int rte_vfio_container_group_bind(__rte_unused int container_fd, __rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_group_unbind(__rte_unused int container_fd, __rte_unused int iommu_group_num) { return -1; } -int __rte_experimental +int rte_vfio_container_dma_map(__rte_unused int container_fd, __rte_unused uint64_t vaddr, __rte_unused uint64_t iova, @@ -1964,7 +1964,7 @@ rte_vfio_container_dma_map(__rte_unused int container_fd, return -1; } -int __rte_experimental +int rte_vfio_container_dma_unmap(__rte_unused int container_fd, __rte_unused uint64_t vaddr, __rte_unused uint64_t iova, diff --git a/lib/librte_eal/rte_eal_version.map b/lib/librte_eal/rte_eal_version.map index f7dd0e7..9019049 100644 --- a/lib/librte_eal/rte_eal_version.map +++ b/lib/librte_eal/rte_eal_version.map @@ -241,6 +241,23 @@ DPDK_18.05 { } DPDK_18.02; +DPDK_18.08 { + global: + + rte_vfio_dma_map; + rte_vfio_dma_unmap; + rte_vfio_get_container_fd; + rte_vfio_get_group_fd; + rte_vfio_get_group_num; + rte_vfio_container_create; + rte_vfio_container_destroy; + rte_vfio_container_dma_map; + rte_vfio_container_dma_unmap; + rte_vfio_container_group_bind; + rte_vfio_container_group_unbind; + +}DPDK_18.05; + EXPERIMENTAL { global: @@ -296,15 +313,4 @@ EXPERIMENTAL { rte_mp_sendmsg; rte_socket_count; rte_socket_id_by_idx; - rte_vfio_dma_map; - rte_vfio_dma_unmap; - rte_vfio_get_container_fd; - rte_vfio_get_group_fd; - rte_vfio_get_group_num; - rte_vfio_container_create; - rte_vfio_container_destroy; - rte_vfio_container_dma_map; - rte_vfio_container_dma_unmap; - rte_vfio_container_group_bind; - rte_vfio_container_group_unbind; };