From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [67.231.154.164]) by dpdk.org (Postfix) with ESMTP id D645FD4AC for ; Mon, 16 Apr 2018 15:25:00 +0200 (CEST) X-Virus-Scanned: Proofpoint Essentials engine Received: from webmail.solarflare.com (webmail.solarflare.com [12.187.104.26]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1-us4.ppe-hosted.com (Proofpoint Essentials ESMTP Server) with ESMTPS id D4C2F1400EF; Mon, 16 Apr 2018 13:24:59 +0000 (UTC) Received: from sfocexch01r.SolarFlarecom.com (10.20.40.34) by ocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Mon, 16 Apr 2018 06:24:52 -0700 Received: from ocex03.SolarFlarecom.com (10.20.40.36) by sfocexch01r.SolarFlarecom.com (10.20.40.34) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Mon, 16 Apr 2018 06:24:47 -0700 Received: from opal.uk.solarflarecom.com (10.17.10.1) by ocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server (TLS) id 15.0.1044.25 via Frontend Transport; Mon, 16 Apr 2018 06:24:46 -0700 Received: from uklogin.uk.solarflarecom.com (uklogin.uk.solarflarecom.com [10.17.10.10]) by opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id w3GDOjrs012296; Mon, 16 Apr 2018 14:24:45 +0100 Received: from uklogin.uk.solarflarecom.com (localhost.localdomain [127.0.0.1]) by uklogin.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id w3GDOiRY017332; Mon, 16 Apr 2018 14:24:45 +0100 From: Andrew Rybchenko To: CC: Olivier MATZ Date: Mon, 16 Apr 2018 14:24:39 +0100 Message-ID: <1523885080-17168-11-git-send-email-arybchenko@solarflare.com> X-Mailer: git-send-email 1.8.2.3 In-Reply-To: <1523885080-17168-1-git-send-email-arybchenko@solarflare.com> References: <1511539591-20966-1-git-send-email-arybchenko@solarflare.com> <1523885080-17168-1-git-send-email-arybchenko@solarflare.com> MIME-Version: 1.0 Content-Type: text/plain X-MDID: 1523885100-fX12SMfJnVwP Subject: [dpdk-dev] [PATCH v4 10/11] mempool: remove callback to register memory area 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, 16 Apr 2018 13:25:01 -0000 The callback is not required any more since there is a new callback to populate objects using provided memory area which provides the same information. Signed-off-by: Andrew Rybchenko Acked-by: Santosh Shukla Acked-by: Olivier Matz --- v3 -> v4: - none v2 -> v3: - none v1 -> v2: - none RFCv2 -> v1: - advertise ABI changes in release notes doc/guides/rel_notes/deprecation.rst | 1 - doc/guides/rel_notes/release_18_05.rst | 2 ++ lib/librte_mempool/rte_mempool.c | 5 ----- lib/librte_mempool/rte_mempool.h | 31 ------------------------------ lib/librte_mempool/rte_mempool_ops.c | 14 -------------- lib/librte_mempool/rte_mempool_version.map | 1 - 6 files changed, 2 insertions(+), 52 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 8d1b362..02ffcd4 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -51,7 +51,6 @@ Deprecation Notices The following changes are planned: - - substitute ``register_memory_area`` with ``populate`` ops. - addition of new op to allocate contiguous block of objects if underlying driver supports it. diff --git a/doc/guides/rel_notes/release_18_05.rst b/doc/guides/rel_notes/release_18_05.rst index 3869d04..3ed4aae 100644 --- a/doc/guides/rel_notes/release_18_05.rst +++ b/doc/guides/rel_notes/release_18_05.rst @@ -223,6 +223,8 @@ ABI Changes Callback ``get_capabilities`` has been removed from ``rte_mempool_ops`` since its features are covered by ``calc_mem_size`` and ``populate`` callbacks. + Callback ``register_memory_area`` has been removed from ``rte_mempool_ops`` + since the new callback ``populate`` may be used instead of it. Removed Items diff --git a/lib/librte_mempool/rte_mempool.c b/lib/librte_mempool/rte_mempool.c index c63c363..84b3d64 100644 --- a/lib/librte_mempool/rte_mempool.c +++ b/lib/librte_mempool/rte_mempool.c @@ -378,11 +378,6 @@ rte_mempool_populate_iova(struct rte_mempool *mp, char *vaddr, if (ret != 0) return ret; - /* Notify memory area to mempool */ - ret = rte_mempool_ops_register_memory_area(mp, vaddr, iova, len); - if (ret != -ENOTSUP && ret < 0) - return ret; - /* mempool is already populated */ if (mp->populated_size >= mp->size) return -ENOSPC; diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h index 9107f5a..314f909 100644 --- a/lib/librte_mempool/rte_mempool.h +++ b/lib/librte_mempool/rte_mempool.h @@ -371,12 +371,6 @@ typedef int (*rte_mempool_dequeue_t)(struct rte_mempool *mp, typedef unsigned (*rte_mempool_get_count)(const struct rte_mempool *mp); /** - * Notify new memory area to mempool. - */ -typedef int (*rte_mempool_ops_register_memory_area_t) -(const struct rte_mempool *mp, char *vaddr, rte_iova_t iova, size_t len); - -/** * Calculate memory size required to store given number of objects. * * If mempool objects are not required to be IOVA-contiguous @@ -514,10 +508,6 @@ struct rte_mempool_ops { rte_mempool_dequeue_t dequeue; /**< Dequeue an object. */ rte_mempool_get_count get_count; /**< Get qty of available objs. */ /** - * Notify new memory area to mempool - */ - rte_mempool_ops_register_memory_area_t register_memory_area; - /** * Optional callback to calculate memory size required to * store specified number of objects. */ @@ -639,27 +629,6 @@ unsigned rte_mempool_ops_get_count(const struct rte_mempool *mp); /** - * @internal wrapper for mempool_ops register_memory_area callback. - * API to notify the mempool handler when a new memory area is added to pool. - * - * @param mp - * Pointer to the memory pool. - * @param vaddr - * Pointer to the buffer virtual address. - * @param iova - * Pointer to the buffer IO address. - * @param len - * Pool size. - * @return - * - 0: Success; - * - -ENOTSUP - doesn't support register_memory_area ops (valid error case). - * - Otherwise, rte_mempool_populate_phys fails thus pool create fails. - */ -int -rte_mempool_ops_register_memory_area(const struct rte_mempool *mp, - char *vaddr, rte_iova_t iova, size_t len); - -/** * @internal wrapper for mempool_ops calc_mem_size callback. * API to calculate size of memory required to store specified number of * object. diff --git a/lib/librte_mempool/rte_mempool_ops.c b/lib/librte_mempool/rte_mempool_ops.c index 6ac669a..ea9be1e 100644 --- a/lib/librte_mempool/rte_mempool_ops.c +++ b/lib/librte_mempool/rte_mempool_ops.c @@ -57,7 +57,6 @@ rte_mempool_register_ops(const struct rte_mempool_ops *h) ops->enqueue = h->enqueue; ops->dequeue = h->dequeue; ops->get_count = h->get_count; - ops->register_memory_area = h->register_memory_area; ops->calc_mem_size = h->calc_mem_size; ops->populate = h->populate; @@ -99,19 +98,6 @@ rte_mempool_ops_get_count(const struct rte_mempool *mp) } /* wrapper to notify new memory area to external mempool */ -int -rte_mempool_ops_register_memory_area(const struct rte_mempool *mp, char *vaddr, - rte_iova_t iova, size_t len) -{ - struct rte_mempool_ops *ops; - - ops = rte_mempool_get_ops(mp->ops_index); - - RTE_FUNC_PTR_OR_ERR_RET(ops->register_memory_area, -ENOTSUP); - return ops->register_memory_area(mp, vaddr, iova, len); -} - -/* wrapper to notify new memory area to external mempool */ ssize_t rte_mempool_ops_calc_mem_size(const struct rte_mempool *mp, uint32_t obj_num, uint32_t pg_shift, diff --git a/lib/librte_mempool/rte_mempool_version.map b/lib/librte_mempool/rte_mempool_version.map index 637f73f..cf375db 100644 --- a/lib/librte_mempool/rte_mempool_version.map +++ b/lib/librte_mempool/rte_mempool_version.map @@ -45,7 +45,6 @@ DPDK_16.07 { DPDK_17.11 { global: - rte_mempool_ops_register_memory_area; rte_mempool_populate_iova; rte_mempool_populate_iova_tab; -- 2.7.4