Hi list,
I am currently in the process of adding PAE support within kvm(3). As
such, I am proposing a patch (see attached) to the "review before
commit" process:
- it makes paddr_t a 64 bits entity for i386 userland, whether PAE
support was compiled in, or not (only affects kvm_i386).
- basic rework of PD/PT code, to expose some macros simultaneously for
i386 native and PAE mode.
Depending on the mode they apply to, they are either prefixed with
"I386_" or "PAE_" (suggestions welcomed for better wording). These
macros are required in different parts of pmap, directly or indirectly
(through pl*_i functions). In order to remain "largely" compatible with
the current architecture, I am using ___CONCAT() magic to properly
select the ones that will be used at compilation time.
After the pmap rework from rmind@, I will investigate further on how I
could get more abstraction inside pmap, like providing native and PAE
code simultaneously in kernel, without too much duplication (this will
need paddr_t 64 bits work too, so let's do this gradually).
Opinions on that one? It is required for my kvm(3) prototype change
work, which will be subject of another mail to current-users@ in about 5
min. The libsa change will be committed separately.
--
Jean-Yves Migeon
jeanyves.migeon%free.fr@localhost