]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.1-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Sep 2023 16:28:59 +0000 (17:28 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Sep 2023 16:28:59 +0000 (17:28 +0100)
added patches:
revert-net-macsec-preserve-ingress-frame-ordering.patch

queue-6.1/revert-net-macsec-preserve-ingress-frame-ordering.patch [new file with mode: 0644]
queue-6.1/series

diff --git a/queue-6.1/revert-net-macsec-preserve-ingress-frame-ordering.patch b/queue-6.1/revert-net-macsec-preserve-ingress-frame-ordering.patch
new file mode 100644 (file)
index 0000000..e73e95c
--- /dev/null
@@ -0,0 +1,50 @@
+From d3287e4038ca4f81e02067ab72d087af7224c68b Mon Sep 17 00:00:00 2001
+From: Sabrina Dubroca <sd@queasysnail.net>
+Date: Mon, 4 Sep 2023 10:56:04 +0200
+Subject: Revert "net: macsec: preserve ingress frame ordering"
+
+From: Sabrina Dubroca <sd@queasysnail.net>
+
+commit d3287e4038ca4f81e02067ab72d087af7224c68b upstream.
+
+This reverts commit ab046a5d4be4c90a3952a0eae75617b49c0cb01b.
+
+It was trying to work around an issue at the crypto layer by excluding
+ASYNC implementations of gcm(aes), because a bug in the AESNI version
+caused reordering when some requests bypassed the cryptd queue while
+older requests were still pending on the queue.
+
+This was fixed by commit 38b2f68b4264 ("crypto: aesni - Fix cryptd
+reordering problem on gcm"), which pre-dates ab046a5d4be4.
+
+Herbert Xu confirmed that all ASYNC implementations are expected to
+maintain the ordering of completions wrt requests, so we can use them
+in MACsec.
+
+On my test machine, this restores the performance of a single netperf
+instance, from 1.4Gbps to 4.4Gbps.
+
+Link: https://lore.kernel.org/netdev/9328d206c5d9f9239cae27e62e74de40b258471d.1692279161.git.sd@queasysnail.net/T/
+Link: https://lore.kernel.org/netdev/1b0cec71-d084-8153-2ba4-72ce71abeb65@byu.edu/
+Link: https://lore.kernel.org/netdev/d335ddaa-18dc-f9f0-17ee-9783d3b2ca29@mailbox.tu-dresden.de/
+Fixes: ab046a5d4be4 ("net: macsec: preserve ingress frame ordering")
+Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
+Link: https://lore.kernel.org/r/11c952469d114db6fb29242e1d9545e61f52f512.1693757159.git.sd@queasysnail.net
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/macsec.c |    3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/net/macsec.c
++++ b/drivers/net/macsec.c
+@@ -1331,8 +1331,7 @@ static struct crypto_aead *macsec_alloc_
+       struct crypto_aead *tfm;
+       int ret;
+-      /* Pick a sync gcm(aes) cipher to ensure order is preserved. */
+-      tfm = crypto_alloc_aead("gcm(aes)", 0, CRYPTO_ALG_ASYNC);
++      tfm = crypto_alloc_aead("gcm(aes)", 0, 0);
+       if (IS_ERR(tfm))
+               return tfm;
index f605684b86dc3583e40716476410f42314294797..dc3c11e4dfaa99e6e43fc35f3dce9b1bcce1292b 100644 (file)
@@ -87,3 +87,4 @@ udf-check-consistency-of-space-bitmap-descriptor.patch
 udf-handle-error-when-adding-extent-to-a-file.patch
 input-i8042-add-quirk-for-tuxedo-gemini-17-gen1-clevo-pd70pn.patch
 revert-pci-tegra194-enable-support-for-256-byte-payload.patch
+revert-net-macsec-preserve-ingress-frame-ordering.patch