Re: TLB flushes on fixmap changes
From: Nadav Amit
Date: Fri Aug 24 2018 - 16:25:00 EST
at 12:31 PM, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Aug 24, 2018 at 11:36 AM Nadav Amit <nadav.amit@xxxxxxxxx> wrote:
>>> Urgh.. weren't the fixmaps per cpu? Bah, I remember looking at this
>>> during PTI, but I seem to have forgotten everything again.
>> [ Changed the title. Sorry for hijacking the thread. ]
> The fixmaps should be entirely fixed after bootup to constant
> mappings, except for the KMAP ones, and they are indexed per-cpu.
> That's what my mental model is, at least.
> Can you actually find something that changes the fixmaps after boot
> (again, ignoring kmap)?
At least the alternatives mechanism appears to do so.
IIUC the following path is possible when adding a module:
And a similar path can happen when static_key_enable/disable() is called.