From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Rybchenko Subject: [PATCH v2 3/3] ethdev: fail if Rx queue offload is not supported Date: Mon, 14 May 2018 08:36:18 +0100 Message-ID: <1526283378-30507-4-git-send-email-arybchenko@solarflare.com> References: <1526055955-14027-1-git-send-email-arybchenko@solarflare.com> <1526283378-30507-1-git-send-email-arybchenko@solarflare.com> Mime-Version: 1.0 Content-Type: text/plain Cc: Ferruh Yigit , Thomas Monjalon , Shahaf Shuler , Wei Dai To: Return-path: Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [148.163.129.52]) by dpdk.org (Postfix) with ESMTP id 6ADD32583 for ; Mon, 14 May 2018 09:36:51 +0200 (CEST) In-Reply-To: <1526283378-30507-1-git-send-email-arybchenko@solarflare.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Return of error was removed to mitigate possible breakage of old applications which are not converted to the new offload API yet. Old Rx offload API has no per queue controls and Rx queue offloads are derived from the device Rx mode bitfields exactly in the same way as it is done on configure and, then, removed to pass queue level offloads only. It is meaningless and should be removed. So, the new offload API only may be used to request per-queue Rx offloads and error should be returned if offload not supported on queue level is requested. Fixes: 0330605295cf ("ethdev: new Rx/Tx offloads API") Signed-off-by: Andrew Rybchenko --- lib/librte_ethdev/rte_ethdev.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c index 2b673013a..d82962fae 100644 --- a/lib/librte_ethdev/rte_ethdev.c +++ b/lib/librte_ethdev/rte_ethdev.c @@ -1542,14 +1542,6 @@ rte_eth_rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id, rx_conf = &dev_info.default_rxconf; local_conf = *rx_conf; - if (dev->data->dev_conf.rxmode.ignore_offload_bitfield == 0) { - /** - * Reflect port offloads to queue offloads in order for - * offloads to not be discarded. - */ - rte_eth_convert_rx_offload_bitfield(&dev->data->dev_conf.rxmode, - &local_conf.offloads); - } /* * If an offloading has already been enabled in @@ -1581,6 +1573,7 @@ rte_eth_rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id, local_conf.offloads, dev_info.rx_queue_offload_capa, __func__); + return -EINVAL; } ret = (*dev->dev_ops->rx_queue_setup)(dev, rx_queue_id, nb_rx_desc, -- 2.17.0