From: Greg Kroah-Hartman Date: Fri, 8 Sep 2023 16:28:42 +0000 (+0100) Subject: 5.10-stable patches X-Git-Tag: v6.1.53~120 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f86c3f8b39e82db7bce673550262ebbb372a034c;p=thirdparty%2Fkernel%2Fstable-queue.git 5.10-stable patches added patches: revert-net-macsec-preserve-ingress-frame-ordering.patch --- diff --git a/queue-5.10/revert-net-macsec-preserve-ingress-frame-ordering.patch b/queue-5.10/revert-net-macsec-preserve-ingress-frame-ordering.patch new file mode 100644 index 00000000000..79d166189a7 --- /dev/null +++ b/queue-5.10/revert-net-macsec-preserve-ingress-frame-ordering.patch @@ -0,0 +1,50 @@ +From d3287e4038ca4f81e02067ab72d087af7224c68b Mon Sep 17 00:00:00 2001 +From: Sabrina Dubroca +Date: Mon, 4 Sep 2023 10:56:04 +0200 +Subject: Revert "net: macsec: preserve ingress frame ordering" + +From: Sabrina Dubroca + +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 +Link: https://lore.kernel.org/r/11c952469d114db6fb29242e1d9545e61f52f512.1693757159.git.sd@queasysnail.net +Signed-off-by: Paolo Abeni +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/macsec.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- a/drivers/net/macsec.c ++++ b/drivers/net/macsec.c +@@ -1347,8 +1347,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; diff --git a/queue-5.10/series b/queue-5.10/series index 99195728d65..c1c19d316d1 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -61,3 +61,4 @@ platform-mellanox-fix-mlxbf-tmfifo-not-handling-all-.patch net-avoid-address-overwrite-in-kernel_connect.patch udf-check-consistency-of-space-bitmap-descriptor.patch udf-handle-error-when-adding-extent-to-a-file.patch +revert-net-macsec-preserve-ingress-frame-ordering.patch