Re: [PATCH v5 00/16] x86: make PAT and MTRR independent from each other

From: Borislav Petkov
Date: Wed Nov 02 2022 - 14:05:12 EST


On Wed, Nov 02, 2022 at 08:46:57AM +0100, Juergen Gross wrote:
> Today PAT can't be used without MTRR being available, unless MTRR is at
> least configured via CONFIG_MTRR and the system is running as Xen PV
> guest. In this case PAT is automatically available via the hypervisor,
> but the PAT MSR can't be modified by the kernel and MTRR is disabled.
>
> The same applies to a kernel built with no MTRR support: it won't
> allow to use the PAT MSR, even if there is no technical reason for
> that, other than setting up PAT on all CPUs the same way (which is a
> requirement of the processor's cache management) is relying on some
> MTRR specific code.
>
> Fix all of that by:

One of the AMD test boxes here says with this:

...
[ 0.863466] PCI: not using MMCONFIG
[ 0.863475] PCI: Using configuration type 1 for base access
[ 0.863478] PCI: Using configuration type 1 for extended access
[ 0.866733] mtrr: your CPUs had inconsistent MTRRdefType settings
[ 0.866737] mtrr: probably your BIOS does not setup all CPUs.
[ 0.866740] mtrr: corrected configuration.
[ 0.869350] kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible.
...

Previous logs don't have it:

PCI: not using MMCONFIG
PCI: Using configuration type 1 for base access
PCI: Using configuration type 1 for extended access
kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette