[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/arch
On 24.07.2010 20:47, matthew green wrote:
>> On 24.07.2010 09:50, Christoph Egger wrote:
>> Not necessarily, the kvm(3) API manipulates PA as u_long (see
>> _kvm_kvatop in kvm_i386.c). Changing the paddr_t will need a
>> modification of this API too, and basically, all ports will have to move
>> to uint64_t PA (or put casts everywhere...)
> ah, i thought that it already used paddr_t for this. it should, imo.
> and i'd think that libkvm should be compiled with 64bit paddr_t (ie,
> have the useland definition of paddr_t always be 64 bit) and be smart
> enough to deal with the kernel you feed it. 32 bit sparc has to deal
> with this a lot, since the page tables are considerably more different
> from sparc v8/v9 than i386 vs amd64.
That would be a solution, yes.
FWIW, I am making all PAE related macros and types prefixed with "pae_"
(~ some kind of namespace), and alias the relevant function with them in
_KERNEL when option PAE is enabled.
For kvm(3), both could be used; I could extract a value from a symbol
like "pae_enabled" out of a core file through kvm_nlist, then use the
relevant vatop functions.
Main Index |
Thread Index |