Cc: Rafael J. Wysocki <rjw@...>, Ingo Molnar <mingo@...>, Jeremy Fitzhardinge <jeremy@...>, Ian Campbell <ijc@...>, Mika Penttilä <mika.penttila@...>, <linux-kernel@...>, Thomas Gleixner <tglx@...>, Ingo Molnar <mingo@...>, Eric W. Biederman <ebiederm@...>
This really comes down to the concept that we should keep an
identity-mapped page table set around and keep it maintained.
Maintenance should be relatively cheap -- we don't care about the
vmalloc area (but if it's easier to have it, it won't cause any harm),
and we already have to have code to synchronize the PGDs on !PAE and the
PMDs on Xen (although that was supposedly getting fixed). This is
nothing very different than synchronizing yet another PGD[*] offset.
This obviously relates to (and needs to be on top of) the
always-native-pagetables work.
[*] = Almost. There is one exception: for 3 GB kernel:1 GB userspace,
we must ensure that only 1 GB of the kernel area is synced.
-hpa
--