Re: [PATCH v2 0/3] Fix three racy updates to MSR_K7_HWCR

From: Jim Mattson

Date: Sat Jun 13 2026 - 11:09:39 EST


On Fri, Jun 12, 2026 at 6:56 PM Christian Ludloff <ludloff@xxxxxxxxx> wrote:
>
> > Was it [HWCR] core-shared on older platforms?
>
> Fam 15h (BD/PD/SR/XV) BKDG #42301-3.14 Jan 2013
> section 2.4.1.1 says:
>
> "Some MSRs are implemented one copy per compute unit instead of per
> core; these MSRs are designated as SharedC (shared coherent) or
> SharedNC (shared non-coherent). The absence of SharedC/SharedNC
> implies not-shared, which is the normal per-core instance programming
> model for RDMSR/WRMSR."
>
> In table 8 it then does *not* list HWCR – so it's "not-shared".

Amd in that document, "compute unit" == core and "core" == thread, right?

> Naturally running with non-identical values is... a bit exciting.

That depends on the bit. Non-identical values are quite natural for,
say CPUID faulting at CPL>0, which is admittedly quite new.

On the earth movers, I assume one would want non-identical values for
MONITOR/MWAIT user mode enable, especially in the days before L1TF
forced us to adopt core-aware scheduling.