Linux Netfilter development
 help / color / mirror / Atom feed
* [PATCH 6.12,6.6,6.1,5.15,5.10] netfilter: nft_set_pipapo_avx2: add missing vzeroupper
@ 2026-08-31 19:48 Eric Biggers
  0 siblings, 0 replies; only message in thread
From: Eric Biggers @ 2026-08-31 19:48 UTC (permalink / raw)
  To: stable
  Cc: netfilter-devel, coreteam, linux-kernel, Eric Biggers,
	Stefano Brivio, Pablo Neira Ayuso

commit 55dd20f0f4b1be5c9c8a0275d8d763c86563eac2 upstream.

Since pipapo_get_avx2() uses YMM registers, execute vzeroupper before
returning from it.  This is needed to avoid degrading the performance of
any later SSE code that may happen to be executed.

Fixes: 7400b063969b ("nft_set_pipapo: Introduce AVX2-based lookup implementation")
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Reviewed-by: Stefano Brivio <sbrivio@redhat.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
 net/netfilter/nft_set_pipapo_avx2.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/net/netfilter/nft_set_pipapo_avx2.c b/net/netfilter/nft_set_pipapo_avx2.c
index 9d5ada57aa6f..fd998af98922 100644
--- a/net/netfilter/nft_set_pipapo_avx2.c
+++ b/net/netfilter/nft_set_pipapo_avx2.c
@@ -1262,6 +1262,7 @@ nft_pipapo_avx2_lookup(const struct net *net, const struct nft_set *set,
 out:
 	if (i % 2)
 		scratch->map_index = !map_index;
+	asm volatile("vzeroupper");
 	kernel_fpu_end();
 	local_bh_enable();
 

base-commit: f717995cb7dcd8998ab15516b8006aea09cfde0d
-- 
2.55.0


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-31 19:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-31 19:48 [PATCH 6.12,6.6,6.1,5.15,5.10] netfilter: nft_set_pipapo_avx2: add missing vzeroupper Eric Biggers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox