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 2FE61A0032 for ; Fri, 18 Feb 2022 13:40:29 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 238AE40395; Fri, 18 Feb 2022 13:40:29 +0100 (CET) Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) by mails.dpdk.org (Postfix) with ESMTP id 67F3F40E28 for ; Fri, 18 Feb 2022 13:40:28 +0100 (CET) Received: by mail-wm1-f45.google.com with SMTP id k3-20020a1ca103000000b0037bdea84f9cso6336499wme.1 for ; Fri, 18 Feb 2022 04:40:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=izcB/kekPKPZgPaKdWEjvJx35b+mj3OU4DYHmfW0ZNo=; b=WzUUI414dea+7j5VEXjN6VeJ8x80nStQorquv/uPQbYAupgeHfzHkV1W1lg3PLc2xR 48sxxeVu7eaQmdRk3dQg7asmYkcPYXh5wM4k+3gMG3flHvgwQDidZvuvHqF7ol+Ka+eN OmV2DhdhmieryeFkSmto2fRtIsHkbl8ZYGQRhmGXTF3zsxWHbo4c9s28z3qVoxrkElYz 4WOLQnoL+J5t4hVEqdCoMAQyez4gW0PIdLs/PxaP9A1Xd7wrGCUROolNn8KBfQSDsL+e jErAfxrosMknWN01cdYOe0hk4XRTBanXHiLuCMkWwboAO5j5fGoKH9FajcE+QdiOOO1X NgYw== 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=izcB/kekPKPZgPaKdWEjvJx35b+mj3OU4DYHmfW0ZNo=; b=P5UNW9eahSTa87qrfbeyrdhz21s+qw1/8yJ5pDCoQTvj1c7gq09w0Y+T6RnfqmZoIk zxr61iQBHL+UlP0S/tXbmG0UA8vGEkM3kSGBmRaYmMzblT5y0e61UMkt/9XZ01QbCZCI FHctE4aX6oYtzAdjlYD30hbBkpTBRdmbuBf0s42qwkaJ4BqhamxhLMa9JQwRKWiXuyMx Bpax1vsdeNZ1WptoKnDn+in2QQM/Oyz6/gkuR/fuovr26rA0ZNxD84bjTHUcirL5635U 3VdDKQqmdatlXUD1WDKv3jAlZPuQiQO0tQwOitjvcrCUHZlmJX+pNUxdGf1DCcTI7uWX GokQ== X-Gm-Message-State: AOAM531olX1RTDRzfivePqV3Ay8hENIY7bf5lb22CTMDWS9LVoREpnyk bMuSe+YYDY+RHaq5YASvE8IVwaVg8G9fww== X-Google-Smtp-Source: ABdhPJwprlmmlqZVVXjSqU2KE2FTGw6XECdCkamnmek0/KTSdNXNbUIFFMHuaPweA+f9jozgDiDdrg== X-Received: by 2002:a05:600c:4154:b0:37c:9270:2ff2 with SMTP id h20-20020a05600c415400b0037c92702ff2mr10373047wmm.121.1645188028133; Fri, 18 Feb 2022 04:40:28 -0800 (PST) Received: from localhost ([137.220.125.106]) by smtp.gmail.com with ESMTPSA id z3sm5825725wmp.42.2022.02.18.04.40.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Feb 2022 04:40:27 -0800 (PST) From: luca.boccassi@gmail.com To: Bin Zheng Cc: Leyi Rong , Haiyue Wang , Liang Ma , dpdk stable Subject: patch 'net/ixgbe: add vector Rx parameter check' has been queued to stable release 20.11.5 Date: Fri, 18 Feb 2022 12:37:46 +0000 Message-Id: <20220218123931.1749595-17-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220218123931.1749595-1-luca.boccassi@gmail.com> References: <20220218123931.1749595-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 Hi, FYI, your patch has been queued to stable release 20.11.5 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 02/20/22. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/24e61aa014cb153f49a435bd8e29191a705441e4 Thanks. Luca Boccassi --- >From 24e61aa014cb153f49a435bd8e29191a705441e4 Mon Sep 17 00:00:00 2001 From: Bin Zheng Date: Fri, 10 Dec 2021 16:22:09 +0800 Subject: [PATCH] net/ixgbe: add vector Rx parameter check [ upstream commit c59f93d9a1e09e21e27f5bde7d8632a4d0503582 ] Under the circumstance that `rx_tail` wrap back to zero and the advance speed of `rx_tail` is greater than `rxrearm_start`, `rx_tail` will catch up with `rxrearm_start` and surpass it. This may cause some mbufs be reused by application. So we need to make some restrictions to ensure that `rx_tail` will not exceed `rxrearm_start`. e.g. RDH: 972 RDT: 991 rxrearm_nb: 991 rxrearm_start: 992 rx_tail: 959 RDH: 1004 RDT: 1023 rxrearm_nb: 991 rxrearm_start: 0 rx_tail: 991 RDH: 12 RDT: 31 rxrearm_nb: 991 rxrearm_start: 32 rx_tail: 1023 RDH: 31 RDT: 63 rxrearm_nb: 960 rxrearm_start: 64 rx_tail: 0 RDH: 95 RDT: 95 rxrearm_nb: 1016 rxrearm_start: 96 rx_tail: 88 RDH: 95 RDT: 127 rxrearm_nb: 991 rxrearm_start: 128 rx_tail: 95 ... RDH: 908 RDT: 927 rxrearm_nb: 991 rxrearm_start: 928 rx_tail: 895 RDH: 940 RDT: 959 rxrearm_nb: 991 rxrearm_start: 960 rx_tail: 927 RDH: 980 RDT: 991 rxrearm_nb: 991 rxrearm_start: 992 rx_tail: 959 RDH: 991 RDT: 991 rxrearm_nb: 1026 rxrearm_start: 992 rx_tail: 994 when `rx_tail` catches up with `rxrearm_start`, 2(994 - 992) mbufs be reused by application ! Bugzilla ID: 882 Fixes: 5a3cca342417 ("net/ixgbe: fix vector Rx") Signed-off-by: Bin Zheng Acked-by: Leyi Rong Reviewed-by: Haiyue Wang Reviewed-by: Liang Ma --- drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c b/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c index 1a235fab62..37a1718926 100644 --- a/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c +++ b/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c @@ -364,6 +364,17 @@ _recv_raw_pkts_vec(struct ixgbe_rx_queue *rxq, struct rte_mbuf **rx_pkts, uint8_t vlan_flags; uint16_t udp_p_flag = 0; /* Rx Descriptor UDP header present */ + /* + * Under the circumstance that `rx_tail` wrap back to zero + * and the advance speed of `rx_tail` is greater than `rxrearm_start`, + * `rx_tail` will catch up with `rxrearm_start` and surpass it. + * This may cause some mbufs be reused by application. + * + * So we need to make some restrictions to ensure that + * `rx_tail` will not exceed `rxrearm_start`. + */ + nb_pkts = RTE_MIN(nb_pkts, RTE_IXGBE_RXQ_REARM_THRESH); + /* nb_pkts has to be floor-aligned to RTE_IXGBE_DESCS_PER_LOOP */ nb_pkts = RTE_ALIGN_FLOOR(nb_pkts, RTE_IXGBE_DESCS_PER_LOOP); -- 2.30.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2022-02-18 12:37:38.820491134 +0000 +++ 0017-net-ixgbe-add-vector-Rx-parameter-check.patch 2022-02-18 12:37:37.530788346 +0000 @@ -1 +1 @@ -From c59f93d9a1e09e21e27f5bde7d8632a4d0503582 Mon Sep 17 00:00:00 2001 +From 24e61aa014cb153f49a435bd8e29191a705441e4 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit c59f93d9a1e09e21e27f5bde7d8632a4d0503582 ] + @@ -33 +34,0 @@ -Cc: stable@dpdk.org @@ -44 +45 @@ -index c56f76b368..bb34b27168 100644 +index 1a235fab62..37a1718926 100644