[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250222161908.GDZ7n4_I-t2BSg52X4@fat_crate.local>
Date: Sat, 22 Feb 2025 17:19:08 +0100
From: Borislav Petkov <bp@...en8.de>
To: Rik van Riel <riel@...riel.com>
Cc: Oleksandr Natalenko <oleksandr@...alenko.name>, x86@...nel.org,
linux-kernel@...r.kernel.org, peterz@...radead.org,
dave.hansen@...ux.intel.com, zhengqi.arch@...edance.com,
nadav.amit@...il.com, thomas.lendacky@....com, kernel-team@...a.com,
linux-mm@...ck.org, akpm@...ux-foundation.org, jackmanb@...gle.com,
jannh@...gle.com, mhklinux@...look.com, andrew.cooper3@...rix.com,
Manali.Shukla@....com
Subject: Re: [PATCH v12 00/16] AMD broadcast TLB invalidation
On Sat, Feb 22, 2025 at 11:05:41AM -0500, Rik van Riel wrote:
> It's crashing when writing the value to the
> invlpgb_count_max variable.
>
> This would be because:
> 1) invlpgb_count_max is marked __ro_after_init, making
> it read-only after the system has finished booting, but
> 2) get_cpu_cap gets run at resume and CPU hotplug time!
Yet another side effect of us reading CPUID gazillion times. /facepalm.
> Borislav, do you prefer I move the initialization ofÂ
> invlpgb_count_max back to where it was before, or get
> rid of the __ro_after_init thing?
You probably could move it back to where it was - cpu_detect_tlb_amd - and
leave it __ro_after_init because cpu_detect_tlb() is run on the BSP only so
I'm guessing resume doesn't bootstrap that thing...
Thx.
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
Powered by blists - more mailing lists