Re: [PATCH v6] x86/mm: Don't disable INVLPG if "incomplete Global INVLPG flushes" is fixed by microcode or the kernel is running in a hypervisor

From: Dave Hansen
Date: Thu Apr 11 2024 - 10:45:43 EST


On 4/11/24 03:48, Xi Ruoyao wrote:
> + /*
> + * The Intel errata claims: "this erratum does not apply in VMX
> + * non-root operation. It applies only when PCIDs are enabled
> + * and either in VMX root operation or outside VMX operation."
> + * So we are safe if we are surely running in a hypervisor.
> + */

When you revise this, could you please work to make this more succinct?
The Intel language on these things tends to be a bit flowery and is not
always well-suited for the kernel.

Also, saying that the erratum "claims" this casts doubt on it. That's
counterproductive. I believe the current documentation is correct. My
original ce0b15d11ad8 ("x86/mm: Avoid incomplete Global INVLPG flushes")
should have considered virtualized systems immune to this issue.

I agree that it sounds weird. It _is_ weird that systems running under
hypervisors aren't affected. But that's all it is: a weird bug. The
documentation is correct.