On Fri, Mar 30, 2018 at 04:22:29PM -0400, Mouse wrote:
And I (and ragge, I think it was) misspoke. It doesn't quite require
128K of contiguous physical space. It needs two 64K blocks of
physically contiguous space, both within the block that maps system
space. (Nothing says that P0 PTEs have to be anywhere near P1 PTEs in
system virtual space, but they do have to be within system space.)
...and the problem to be solved here is that the memory has become
fragmented enough that you can't find 64KB of contiguous pages?
If so, what about having a fixed set of emergency reservations and
copying the non-contiguous pmap content into that during context switch?