On Fri, Jul 10, 2020 at 10:16 AM Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > On 10/07/20 19:13, Jim Mattson wrote: > > On Fri, Jul 10, 2020 at 10:06 AM Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > >> > >> On 10/07/20 18:30, Jim Mattson wrote: > >>>> > >>>> This can be problem when having a mixed setup of machines with 5-level page > >>>> tables and machines with 4-level page tables, as live migration can change > >>>> MAXPHYADDR while the guest runs, which can theoretically introduce bugs. > >>> > >>> Huh? Changing MAXPHYADDR while the guest runs should be illegal. Or > >>> have I missed some peculiarity of LA57 that makes MAXPHYADDR a dynamic > >>> CPUID information field? > >> > >> Changing _host_ MAXPHYADDR while the guest runs, such as if you migrate > >> from a host-maxphyaddr==46 to a host-maxphyaddr==52 machine (while > >> keeping guest-maxphyaddr==46). > > > > Ah, but what does that have to do with LA57? > > Intel only has MAXPHYADDR > 46 on LA57 machines (because in general OSes > like to have a physical 1:1 map into the kernel part of the virtual > address space, so having a higher MAXPHYADDR would be of limited use > with 48-bit linear addresses). We all know that the direct map is evil. :-) Sorry it took me so long to get there. I didn't realize that Linux was incapable of using more physical memory than it could map into the kernel's virtual address space. (Wasn't that the whole point of PAE originally?)