Re: [PATCH 6/6] netfilter: nft_set_pipapo_avx2: add missing vzeroupper
From: Stefano Brivio
Date: Sun Aug 16 2026 - 06:39:07 EST
Eric, thanks for taking care of this.
The patch looks good to me, I just have two questions:
On Sat, 15 Aug 2026 13:57:50 -0700
Eric Biggers <ebiggers@xxxxxxxxxx> wrote:
> 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.
Out of curiosity: was this prompted by some observed latency spike in
execution of SSE code, or it's just meant to satisfy the recommendation
from AMD and Intel to use it while transitioning from AVX to SSE modes?
> Fixes: 7400b063969b ("nft_set_pipapo: Introduce AVX2-based lookup implementation")
> Cc: stable@xxxxxxxxxxxxxxx
Is this really stable material? Skipping vzeroupper might have a
performance impact, but it's not an issue for correctness.
The main reason why I'm asking is that, while vzeroupper might look
harmless and obviously safe, it actually caused CVE-2023-20593
("ZenBleed") on AMD Zen 2.
I expect systems receiving stable kernel updates to also run the
patched microcode by now, so I'm not overly concerned in any case.
--
Stefano