Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: CVS commit: src/sys/arch

> On 24.07.2010 09:50, Christoph Egger wrote:
> >> XXX Mixing PAE and !PAE modules may lead to unwanted/unexpected results. 
> >> This
> >> cannot be solved easily, and needs lots of thinking before being declared
> >> safe (paddr_t/bus_addr_t size handling, PD/PT macros abstractions).
> > 
> > How about making paddr_t always 64bit? That makes it much easier to deal
> > with in libkvm.
> 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.


Home | Main Index | Thread Index | Old Index