Re: Device page

2010-02-07 Thread Masao Uebayashi
ISTR sparc64 used bits in the physaddr_t for frambuffer mappings. If so it is well hidden (bus_space_map with LINEAR is used, but AFAICT that does nothing special to the uvm page). Thanks for clarification. Even if something abuses phys_addr, it should be easily fixed. I'll commit the

Re: Device page

2010-02-06 Thread Matt Thomas
On Feb 6, 2010, at 4:20 AM, Masao Uebayashi wrote: This kills phys_addr member at all. I don't think UVM_PAGE_TO_PHYS() is called often. If we need performance, we should probably vectorize this operation, like: struct vm_page *pgs[16]; paddr_t pas[16];

Re: Device page

2010-02-06 Thread Masao Uebayashi
Well, i need phys_addr for VM_MDPAGE_INIT to set the initial color of a page but that could be a second parameter to it. My concern is that if you have several vm_physseg then finding the right could be expensive. Or are we going to sort vm_physmem by increasing pa (and then we could

pgo_get()? what's that? (was Re: Device page)

2010-02-06 Thread David Young
On Wed, Feb 03, 2010 at 03:20:36AM +0900, Masao Uebayashi wrote: As I briefly mentioned before, I'll need device page to support XIP. It's a struct vm_page *, which is actually a magic value which conveys data from pgo_get() to pmap_enter(). What's pgo_get()? Since you seem to be immersed

Re: Device page

2010-02-06 Thread Eduardo Horvath
On Sun, 7 Feb 2010, Masao Uebayashi wrote: This will break mchines that store additional information such as cacheing in the physaddr_t. Could you be more specific? The only instance accessing phys_addr member I can find is: sys/arch/arm/include/arm32/vmparam.h:

Re: Device page

2010-02-02 Thread Matt Thomas
On Feb 2, 2010, at 10:20 AM, Masao Uebayashi wrote: As I briefly mentioned before, I'll need device page to support XIP. It's a struct vm_page *, which is actually a magic value which conveys data from pgo_get() to pmap_enter(). When a device page is pmap_enter()'ed, pmap checks if it's

Re: Device page

2010-02-02 Thread Matt Thomas
On Feb 2, 2010, at 4:13 PM, YAMAMOTO Takashi wrote: On Feb 2, 2010, at 10:20 AM, Masao Uebayashi wrote: As I briefly mentioned before, I'll need device page to support XIP. It's a struct vm_page *, which is actually a magic value which conveys data from pgo_get() to pmap_enter(). When