On 2026-04-29 at 11:45:22 -0700, Dave Hansen wrote: > >From: Dave Hansen <[email protected]> > >Move the existing "native" rdmsr_safe() implementation out to common >code. Consolidate the two rdmsr_safe() implementations down to one >by removing the paravirt.h version. > >Signed-off-by: Dave Hansen <[email protected]> >--- > > b/arch/x86/include/asm/msr.h | 20 ++++++++++---------- > b/arch/x86/include/asm/paravirt.h | 10 ---------- > 2 files changed, 10 insertions(+), 20 deletions(-) > >diff -puN arch/x86/include/asm/msr.h~rdmsr-dups-4 arch/x86/include/asm/msr.h >--- a/arch/x86/include/asm/msr.h~rdmsr-dups-4 2026-04-01 14:32:56.670457110 >-0700 >+++ b/arch/x86/include/asm/msr.h 2026-04-01 14:32:56.676457335 -0700 >@@ -237,6 +227,16 @@ do { > \ > (void)((high) = (u32)(__val >> 32)); \ > } while (0) > >+/* rdmsr with exception handling */ >+#define rdmsr_safe(msr, low, high) \ >+({ \ >+ u64 __val; \ >+ int __err = paravirt_read_msr_safe((msr), &__val); \
I guess this backslash could be aligned with other ones? Other than that everything looks ok to me, boot tested it too with and without PARAVIRT_XXL on v7.1-rc1 without issues. So for the whole patchset: Tested-by: Maciej Wieczor-Retman <[email protected]> Acked-by: Maciej Wieczor-Retman <[email protected]> -- Kind regards Maciej Wieczór-Retman

