From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A5220A00C5 for ; Wed, 3 Aug 2022 12:12:58 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9B58F42684; Wed, 3 Aug 2022 12:12:58 +0200 (CEST) Received: from smtp-relay-internal-0.canonical.com (smtp-relay-internal-0.canonical.com [185.125.188.122]) by mails.dpdk.org (Postfix) with ESMTP id 6C9C540A7E for ; Wed, 3 Aug 2022 12:12:57 +0200 (CEST) Received: from mail-lj1-f197.google.com (mail-lj1-f197.google.com [209.85.208.197]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id B874C3F128 for ; Wed, 3 Aug 2022 10:12:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1659521575; bh=nxya73cyRff/wxz0rqlnpQHPyUB6siop3VTrms/ksZQ=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=AkL3IKBqw+16Q1d9hWt5BpvcoL7hpeNWdSo/7rqJkgr3MA6SMnR5/mLQ4IoJPF62F eJ4hb8ExpGEPheoyF3tm+BBh0/J91usa0i3iADZoZ++p8i7SMsLrWQUXds3g8lR7mR HpTKGZeLnlZ/1d4UyfleG3t7mTwHfpWJpXVjpVtC8SOV7lQljQUCJfEhuZ4cPq2zVY XOMCh6oz15M96gWT4Jy/RkpewtlFwJvLbdPFM8TToQgDiORJsfk/SHS/Adm4Qxy5OW /juLL2Z47LRA33VzqDBkyym+TeDV4+8eBSfn2sv83r3g7A7ckRO3EnuR/Ue8EHfbAx WlrW6StqrN8zg== Received: by mail-lj1-f197.google.com with SMTP id j9-20020a2e8009000000b0025e6b6c147cso362305ljg.4 for ; Wed, 03 Aug 2022 03:12:55 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc; bh=nxya73cyRff/wxz0rqlnpQHPyUB6siop3VTrms/ksZQ=; b=eUxRU6kTF3ZJsYpwuy4dozsntbUe65ucMxPEw6ozjpPlLF3byJgSjXKtZxCIMlvmMh DPzjaiQejEMsxCAVSX1+y6y4FKwIYnuygGPqi4EyFJoQGUyrsEL2gkcpLls7tNjSmcRG m/tFWBgNYmY0ZYQ4Ee7UWVpnQ9Fm2iyR1yvR812C6BSIBwWZQkbKi4P51Nb8h/hV0iyN IZnhiL1KUBhw0rtqijmo2lBKyqS4vsJGY8EGvscRTE7oHYw0IGi/7PMj4eA/ZenQCWHA tAfpNuohpYRegNSuIBvu9ULQdI3Wd1zef6ZB8AEGDc2alJlZX0D+vLts9DcdPJgNenx7 3LvA== X-Gm-Message-State: ACgBeo1ICnH8/l+wodcDOEm7XDH9UXHqUzqfIG1T1u4iCyRRhJ+Yx/1Z KRmyzhgWr0OlE8DfRU9b35UP9qlKHWuwcyIaqTljGF12iC0e6k95Z5j2MtHZfHeT57sr0kGl8VO jeNVbxOaWiBHrrdOwntyRQ4fBk6JkdMzbyXTZJe3p X-Received: by 2002:a05:6512:a96:b0:48a:b087:2980 with SMTP id m22-20020a0565120a9600b0048ab0872980mr8360572lfu.258.1659521574876; Wed, 03 Aug 2022 03:12:54 -0700 (PDT) X-Google-Smtp-Source: AGRyM1tCsCWs9iINmUmQno9jrhMBNCfgfhO0ePq022rCyh/wpzlBefOKarsXlJlRiA5y5C+qFldsnf0ZMQ4uEmeX5As= X-Received: by 2002:a05:6512:a96:b0:48a:b087:2980 with SMTP id m22-20020a0565120a9600b0048ab0872980mr8360561lfu.258.1659521574615; Wed, 03 Aug 2022 03:12:54 -0700 (PDT) MIME-Version: 1.0 References: <20220802112932.14139-1-lihuisong@huawei.com> In-Reply-To: <20220802112932.14139-1-lihuisong@huawei.com> From: Christian Ehrhardt Date: Wed, 3 Aug 2022 12:12:28 +0200 Message-ID: Subject: Re: [PATCH 19.11] ethdev: fix RSS update when RSS is disabled To: Huisong Li Cc: stable@dpdk.org, liudongdong3@huawei.com, fengchengwen@huawei.com, huangdaode@huawei.com, yux.jiang@intel.com Content-Type: text/plain; charset="UTF-8" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org On Tue, Aug 2, 2022 at 1:30 PM Huisong Li wrote: > > [ upstream commit 93e1ea6dfa99dea359b8d66123576a395c2c0acd ] Thank you, your patch was too late in regard to my original deadline and I was then unavailable for a while. In the meantime more patches came in and I do not want to waste any of them just because they were late. Your patch is applied to the WIP branch now, but currently testing of -rc1 is going on which I do not want to disrupt. If we need an -rc2 anyway or generally have the time to do an -rc2 without too much disruption it will be in 19.11.13, otherwise it is already queued for 19.11.14 > The ETH_MQ_RX_RSS_FLAG flag is a switch to enable RSS. If the flag > is not set in dev_configure, RSS will be not configured and enabled. > However, RSS hash and reta can still be configured by ethdev ops to > enable RSS if the flag isn't set. The behavior is inconsistent. > > Bugzilla ID: 1056 > Fixes: 99a2dd955fba ("lib: remove librte_ prefix from directory names") > > Signed-off-by: Huisong Li > Signed-off-by: Min Hu (Connor) > Reviewed-by: Ferruh Yigit > --- > lib/librte_ethdev/rte_ethdev.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c > index 76699cc10f..eb82e12ea4 100644 > --- a/lib/librte_ethdev/rte_ethdev.c > +++ b/lib/librte_ethdev/rte_ethdev.c > @@ -3504,6 +3504,7 @@ rte_eth_dev_rss_reta_update(uint16_t port_id, > struct rte_eth_rss_reta_entry64 *reta_conf, > uint16_t reta_size) > { > + enum rte_eth_rx_mq_mode mq_mode; > struct rte_eth_dev *dev; > int ret; > > @@ -3521,6 +3522,12 @@ rte_eth_dev_rss_reta_update(uint16_t port_id, > if (ret < 0) > return ret; > > + mq_mode = dev->data->dev_conf.rxmode.mq_mode; > + if (!(mq_mode & ETH_MQ_RX_RSS_FLAG)) { > + RTE_ETHDEV_LOG(ERR, "Multi-queue RSS mode isn't enabled.\n"); > + return -ENOTSUP; > + } > + > RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->reta_update, -ENOTSUP); > return eth_err(port_id, (*dev->dev_ops->reta_update)(dev, reta_conf, > reta_size)); > @@ -3553,6 +3560,7 @@ rte_eth_dev_rss_hash_update(uint16_t port_id, > { > struct rte_eth_dev *dev; > struct rte_eth_dev_info dev_info = { .flow_type_rss_offloads = 0, }; > + enum rte_eth_rx_mq_mode mq_mode; > int ret; > > RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV); > @@ -3572,6 +3580,13 @@ rte_eth_dev_rss_hash_update(uint16_t port_id, > dev_info.flow_type_rss_offloads); > return -EINVAL; > } > + > + mq_mode = dev->data->dev_conf.rxmode.mq_mode; > + if (!(mq_mode & ETH_MQ_RX_RSS_FLAG)) { > + RTE_ETHDEV_LOG(ERR, "Multi-queue RSS mode isn't enabled.\n"); > + return -ENOTSUP; > + } > + > RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->rss_hash_update, -ENOTSUP); > return eth_err(port_id, (*dev->dev_ops->rss_hash_update)(dev, > rss_conf)); > -- > 2.22.0 > -- Christian Ehrhardt Senior Staff Engineer, Ubuntu Server Canonical Ltd