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 7B280A0C47 for ; Thu, 14 Oct 2021 22:19:40 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7058141174; Thu, 14 Oct 2021 22:19:40 +0200 (CEST) Received: from mail-lf1-f52.google.com (mail-lf1-f52.google.com [209.85.167.52]) by mails.dpdk.org (Postfix) with ESMTP id B5C2B41165 for ; Thu, 14 Oct 2021 22:19:36 +0200 (CEST) Received: by mail-lf1-f52.google.com with SMTP id p16so32219453lfa.2 for ; Thu, 14 Oct 2021 13:19:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vsaW1RMeDyqB7MuggQo7egOq6CZdErrFx8MJftb4Ncg=; b=qcZpPLxNNieTXZpYythyI0Oh15hr2oYmIfjjeeQZPeG/H1Cg87XT4M04XzNRIRxXs3 qFRW9g7EE3KCFdKA6rAw0ByZHyKVB9funr2WL3aEGlGaYshiGVeUKZ5CZLaaAaERK+mz 4h7W7RaOHlX359TJG8Usc9FJVbtTbZ5CWoOZWvW+Az03U0USFHZqJcyZ124/ayOA6Vc4 0NnqDOCb7SrnkNkF8ALFsDp6GktfKzupqYD3JX4SfQUkJuG6npDGt/xrjQRdDPeB7WnC 8P8HNDlk0WHcUbASifFrb5g+k79gcvHSaNQpmOY8ldIX3e4xVBJtLhA/E2z4E95KmDOH afzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=vsaW1RMeDyqB7MuggQo7egOq6CZdErrFx8MJftb4Ncg=; b=bayo75lzWKjkdhSN5PGLQ0rSTTIKtAnfoxwKDaC50wcHYYAscmUikGNWG9p6OsKmnj Tb/kf6EoR3RyqA/nCjKPJ7FT2nC0++clPkX3Lc+9/dpvAtk+4dXh4ezCoJLR4qjGiPIc /iC4ni0MWm0yU5EJ+CLje5rgnLG/emzBNwzUNWFumAc8nru/7OXDeHqLEmf5F8/n2mEU gkJWrmGtv12+Yt6rBlKoK6KlueiqAuSeLWCZcP5IzPda39KiiCqsjLbP5r9KQOLpz956 dIqCPndZikuVzyIDxmMNuwUo0X0DnW2lzLYIbWC3n1fiMGBKiskf2jK3y90eTGJLTaOn hy0g== X-Gm-Message-State: AOAM531gOEAp/covWFxz7XnEnFtA4HvRBBSC/3IakGkEDK/MDjK/wyDd yBNqqXqMPiC8Tj93TO/UtLqjfw== X-Google-Smtp-Source: ABdhPJxkRYbru2M5Ir0D0CmAv4g/TxjVbsp74sDIita7Ad59xStQI5Nd0upqMDmBMugg/9sYSOvzMg== X-Received: by 2002:a2e:9346:: with SMTP id m6mr7341102ljh.283.1634242776318; Thu, 14 Oct 2021 13:19:36 -0700 (PDT) Received: from DESKTOP-U5LNN3J.localdomain (89-79-181-52.dynamic.chello.pl. [89.79.181.52]) by smtp.gmail.com with ESMTPSA id y25sm308073lfg.179.2021.10.14.13.19.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Oct 2021 13:19:35 -0700 (PDT) From: Michal Krawczyk To: ferruh.yigit@intel.com Cc: dev@dpdk.org, upstream@semihalf.com, shaibran@amazon.com, ndagan@amazon.com, igorch@amazon.com, Michal Krawczyk , stable@dpdk.org Date: Thu, 14 Oct 2021 22:18:55 +0200 Message-Id: <20211014201858.9571-5-mk@semihalf.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211014201858.9571-1-mk@semihalf.com> References: <20211014201858.9571-1-mk@semihalf.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] [PATCH 4/7] net/ena: indicate missing scattered Rx capability 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 Sender: "stable" ENA can't be forced to always pass single descriptor for the Rx packet. Even if the passed buffer size is big enough to hold the data, we can't make assumption that the HW won't use extra descriptor because of internal optimizations. This assumption may be true, but only for some of the FW revisions, which may differ depending on the used AWS instance type. As the scattered Rx support on the Rx path already exists, the driver just needs to announce DEV_RX_OFFLOAD_SCATTER capability by turning on the rte_eth_dev_data::scattered_rx option. Fixes: 1173fca25af9 ("ena: add polling-mode driver") Cc: stable@dpdk.org Signed-off-by: Michal Krawczyk Reviewed-by: Igor Chauskin Reviewed-by: Shai Brandes --- drivers/net/ena/ena_ethdev.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c index 94e3cc3765..628595e5f3 100644 --- a/drivers/net/ena/ena_ethdev.c +++ b/drivers/net/ena/ena_ethdev.c @@ -1929,8 +1929,14 @@ static int ena_dev_configure(struct rte_eth_dev *dev) dev->data->dev_conf.rxmode.offloads |= DEV_RX_OFFLOAD_RSS_HASH; dev->data->dev_conf.txmode.offloads |= DEV_TX_OFFLOAD_MULTI_SEGS; + /* Scattered Rx cannot be turned off in the HW, so this capability must + * be forced. + */ + dev->data->scattered_rx = 1; + adapter->tx_selected_offloads = dev->data->dev_conf.txmode.offloads; adapter->rx_selected_offloads = dev->data->dev_conf.rxmode.offloads; + return 0; } @@ -1978,7 +1984,7 @@ static uint64_t ena_get_rx_port_offloads(struct ena_adapter *adapter) if (adapter->offloads.rx_offloads & ENA_RX_RSS_HASH) port_offloads |= DEV_RX_OFFLOAD_RSS_HASH; - port_offloads |= DEV_RX_OFFLOAD_JUMBO_FRAME; + port_offloads |= DEV_RX_OFFLOAD_JUMBO_FRAME | DEV_RX_OFFLOAD_SCATTER; return port_offloads; } -- 2.25.1