From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <stable-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id D83F8A0032
	for <public@inbox.dpdk.org>; Mon, 15 Nov 2021 19:24:21 +0100 (CET)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id A0FF141163;
	Mon, 15 Nov 2021 19:24:19 +0100 (CET)
Received: from mail-pg1-f174.google.com (mail-pg1-f174.google.com
 [209.85.215.174])
 by mails.dpdk.org (Postfix) with ESMTP id C2E1A41152
 for <stable@dpdk.org>; Mon, 15 Nov 2021 19:24:17 +0100 (CET)
Received: by mail-pg1-f174.google.com with SMTP id n23so15257321pgh.8
 for <stable@dpdk.org>; Mon, 15 Nov 2021 10:24:17 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version; bh=PWUqGTaZEI9j4YSTrbL3CEHrs5TmpqJVuPfEJ2cgcTY=;
 b=ffYGpm/NNyEoO06Fp5Qgo0PQBSVDt8ojvvwsI19N1qbCq4Ibjqpj7hhDROyieDPM52
 sjfDguc5dxdQovjqplwCi5T7fZ8whDuEiTKBN7yhzrxyC6XkpwfVzpqru1rrmUFcd3jR
 wU3FDbAJT7TJVB4l8Dw3dbuFyWEX1f19VnXfA=
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;
 bh=PWUqGTaZEI9j4YSTrbL3CEHrs5TmpqJVuPfEJ2cgcTY=;
 b=brhAR9OhPPHjFWBPL6etYuooWuPJvCjtnIvkpMs9j+kna7AGzrlzgI+Nplj6I/qUl+
 ZRsUgmsD7YQf/BmPQxpcjeX156/p0Dbv9uJO5rPts90KbGdPwBCHnxfhY26qbPLdTVhj
 LrU/DoF/jC9KwEPw6m3e5znz2yF1H+huExQnveT5dTxcCHywASgWb8y3YnHYY+eX4Guy
 igxtCpGOXJeEcsa+r44IDui+RbxAy8XrnI9JSGPdE46oCRazmAiVJSoDhf35xH0IkHtF
 mjwnWziV7VGsc+Io5InCRmbQw40m66FyDo6xdfA6CCRDt60+9gdW0Wk8xlnWzMEqHCTp
 HPeA==
X-Gm-Message-State: AOAM530lOhsuOrUajZVMmip+Fb0xLYjmhhp0AMfXnasFBBkjMFGq35AE
 Eij8POgkJvJybj/6yAuX81XhFA==
X-Google-Smtp-Source: ABdhPJx0sGVtDD80cDhtuJPVMKxLhsAcjeaX82cu+0ZebtazsfhlcYHIXxl77GzDhHDZKdrFyg4B/w==
X-Received: by 2002:a63:d00c:: with SMTP id z12mr615839pgf.334.1637000657006; 
 Mon, 15 Nov 2021 10:24:17 -0800 (PST)
Received: from lrichardson-VirtualBox.dhcp.broadcom.net ([192.19.11.250])
 by smtp.gmail.com with ESMTPSA id w7sm12419785pgo.56.2021.11.15.10.24.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 15 Nov 2021 10:24:16 -0800 (PST)
From: Lance Richardson <lance.richardson@broadcom.com>
To: Bruce Richardson <bruce.richardson@intel.com>,
 Konstantin Ananyev <konstantin.ananyev@intel.com>,
 Ajit Khaparde <ajit.khaparde@broadcom.com>,
 Somnath Kotur <somnath.kotur@broadcom.com>
Cc: dev@dpdk.org,
	stable@dpdk.org
Subject: [PATCH 1/2] net/bnxt: avoid unnecessary work in AVX2 Rx path
Date: Mon, 15 Nov 2021 13:24:09 -0500
Message-Id: <20211115182410.5545-2-lance.richardson@broadcom.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20211115182410.5545-1-lance.richardson@broadcom.com>
References: <20211115182410.5545-1-lance.richardson@broadcom.com>
MIME-Version: 1.0
Content-Type: multipart/signed; protocol="application/pkcs7-signature";
 micalg=sha-256; boundary="000000000000ac90f305d0d7ea86"
X-BeenThere: stable@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: patches for DPDK stable branches <stable.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/stable>,
 <mailto:stable-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/stable/>
List-Post: <mailto:stable@dpdk.org>
List-Help: <mailto:stable-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/stable>,
 <mailto:stable-request@dpdk.org?subject=subscribe>
Errors-To: stable-bounces@dpdk.org

--000000000000ac90f305d0d7ea86
Content-Transfer-Encoding: 8bit

Each call to the AVX2 vector burst receive function makes at
least one pass through the function's inner loop, loading
256 bytes of completion descriptors and copying 8 rte_mbuf
pointers regardless of whether there are any packets to be
received.

Unidirectional forwarding performance is improved by about
3-4% if we ensure that at least one packet can be received
before entering the inner loop.

Fixes: c4e4c18963b0 ("net/bnxt: add AVX2 RX/Tx")
Cc: stable@dpdk.org
Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
---
 drivers/net/bnxt/bnxt_rxtx_vec_avx2.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/bnxt/bnxt_rxtx_vec_avx2.c b/drivers/net/bnxt/bnxt_rxtx_vec_avx2.c
index e4905b4fd1..54e3af22ac 100644
--- a/drivers/net/bnxt/bnxt_rxtx_vec_avx2.c
+++ b/drivers/net/bnxt/bnxt_rxtx_vec_avx2.c
@@ -98,6 +98,10 @@ recv_burst_vec_avx2(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t nb_pkts)
 	rte_prefetch0(&cp_desc_ring[cons + 8]);
 	rte_prefetch0(&cp_desc_ring[cons + 12]);
 
+	/* Return immediately if there is not at least one completed packet. */
+	if (!bnxt_cpr_cmp_valid(&cp_desc_ring[cons], raw_cons, cp_ring_size))
+		return 0;
+
 	/* Ensure that we do not go past the ends of the rings. */
 	nb_pkts = RTE_MIN(nb_pkts, RTE_MIN(rx_ring_size - mbcons,
 					   (cp_ring_size - cons) / 2));
-- 
2.25.1


--000000000000ac90f305d0d7ea86
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

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
riBJ/K1AFUjRAjFhGV64l++td7dkmnq/X8ET75ti+w1s4FRpFqkD2m7pg5NxdsZphYIXAgMBAAGj
QjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSP8Et/qC5FJK5N
UPpjmove4t0bvDANBgkqhkiG9w0BAQsFAAOCAQEAS0DbwFCq/sgM7/eWVEVJu5YACUGssxOGhigH
M8pr5nS5ugAtrqQK0/Xx8Q+Kv3NnSoPHRHt44K9ubG8DKY4zOUXDjuS5V2yq/BKW7FPGLeQkbLmU
Y/vcU2hnVj6DuM81IcPJaP7O2sJTqsyQiunwXUaMld16WCgaLx3ezQA3QY/tRG3XUyiXfvNnBB4V
14qWtNPeTCekTBtzc3b0F5nCH3oO4y0IrQocLP88q1UOD5F+NuvDV0m+4S4tfGCLw0FREyOdzvcy
a5QBqJnnLDMfOjsl0oZAzjsshnjJYS8Uuu7bVW/fhO4FCU29KNhyztNiUGUe65KXgzHZs7XKR1g/
XzCCBVgwggRAoAMCAQICDEE6ETlop5mCMi8TTTANBgkqhkiG9w0BAQsFADBbMQswCQYDVQQGEwJC
RTEZMBcGA1UEChMQR2xvYmFsU2lnbiBudi1zYTExMC8GA1UEAxMoR2xvYmFsU2lnbiBHQ0MgUjMg
UGVyc29uYWxTaWduIDIgQ0EgMjAyMDAeFw0yMTAyMjIxNDAwMDZaFw0yMjA5MjIxNDA0NDVaMIGW
MQswCQYDVQQGEwJJTjESMBAGA1UECBMJS2FybmF0YWthMRIwEAYDVQQHEwlCYW5nYWxvcmUxFjAU
BgNVBAoTDUJyb2FkY29tIEluYy4xGTAXBgNVBAMTEExhbmNlIFJpY2hhcmRzb24xLDAqBgkqhkiG
9w0BCQEWHWxhbmNlLnJpY2hhcmRzb25AYnJvYWRjb20uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOC
AQ8AMIIBCgKCAQEAtwpZpnhFX97ppmkjMk0524J34JdotSKqTN5VpCqyyjqOsA0+igK8vDIGNu+a
k/I58b3mblSBsPf9Nh2ac1Qiu8fe/SRrxE2iwLdoY+lXFDHOSJ8YU5wbZShTmffks80aTql1eafj
tiuQyqfwsT7KhL7TtQmS9kiSoOH2JSKQP34kp8oQHDYMKs/K6LbknHFvZQuu1tyzp9So3lsR40I4
F6MGdop4+ha+FsPeuhBVzHZETpIgknNz9flzINObGsEoHwpQ2aNccyKXb6WhR8cgmBsE5g6yJM8I
pRfmy8qUi+GjsMESst3vqlHhoH+2mONs2aTi6bGmi97VtBBrwtg4SQIDAQABo4IB3jCCAdowDgYD
VR0PAQH/BAQDAgWgMIGjBggrBgEFBQcBAQSBljCBkzBOBggrBgEFBQcwAoZCaHR0cDovL3NlY3Vy
ZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvZ3NnY2NyM3BlcnNvbmFsc2lnbjJjYTIwMjAuY3J0MEEG
CCsGAQUFBzABhjVodHRwOi8vb2NzcC5nbG9iYWxzaWduLmNvbS9nc2djY3IzcGVyc29uYWxzaWdu
MmNhMjAyMDBNBgNVHSAERjBEMEIGCisGAQQBoDIBKAowNDAyBggrBgEFBQcCARYmaHR0cHM6Ly93
d3cuZ2xvYmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wCQYDVR0TBAIwADBJBgNVHR8EQjBAMD6gPKA6
hjhodHRwOi8vY3JsLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNpZ24yY2EyMDIwLmNy
bDAoBgNVHREEITAfgR1sYW5jZS5yaWNoYXJkc29uQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggr
BgEFBQcDBDAfBgNVHSMEGDAWgBSWM9HmWBdbNHWKgVZk1b5I3qGPzzAdBgNVHQ4EFgQUjrW9hZEi
RhS3ycv7B7yNT4ZrlTUwDQYJKoZIhvcNAQELBQADggEBAC33vhcbLmLx4UYvphWOyiUhuwWwXGne
1yu5ciJf7xa8NhNr08wJ4HWmtPTt4PeoswbYKybfmCHCKRgdlsuOIY8+e5dxtPDNNtgDuadauKTH
cVagaPUqEK+0C5YcfWoQTfgL7chfv4s+ZNDGuVbt0EjflX4u3gb3HFwkrlOaZSx/fTMh3uyL8EIV
wUPvLlDKieK0BzrXEqjF+PA/YAiFEgfsTMqpwZJ7HjHECNsNRrTsAL5PEZA6CPn/05YRh90p7y6s
BvWO7ehqE8R1FML6VqLiuzdoV6aY/tGkpxCVQSq6WPJYoe2AimWT6BFI50/llQOsXrHvmPIii/X9
epe3qW8xggJtMIICaQIBATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52
LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMiBDQSAyMDIwAgxB
OhE5aKeZgjIvE00wDQYJYIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEINgxY1P4zcxtaDYq
nhGQVXJd6jt1yBy4iG6m2pUMy5gvMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcN
AQkFMQ8XDTIxMTExNTE4MjQxN1owaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZI
AWUDBAEWMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEH
MAsGCWCGSAFlAwQCATANBgkqhkiG9w0BAQEFAASCAQBIc0Lfn0lR82CQF0R0Ymxnhv++goXVkltB
UksMuXxcpxFCdSuFUCdOTA19iGD7ciIJ4f4GeUzVo4CJfJKjUlHhPB6urv55GSBWD0jdkBNzTOw1
LArvbYZ5WpRYDNXI8kVnNEgEoGDNQWWfWteOWA7nfLNvVgQ0mlzP6iHDTI1F6cwS9QGUvBPuCP4H
7JKlmCqOrFqKO5H/MzByDk5GRSk1W5U6Wf6iATOtaMXT3rOWWXu/sNmmWsESmnZkNI47bhwV7iN2
BMsUglXsHjTDRxwo0ShWaQQXLAt/z8k/lJsWFfNVbm8afwN82rVTJb0PqbSLd6SDOCYFrnZNkG/a
oAyE
--000000000000ac90f305d0d7ea86--