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

[Xen-devel] RE: [RFC] fix xen_in_range()

> From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx]
> Sent: Thursday, April 23, 2009 12:25 AM
> On 23/04/2009 00:53, "Cihula, Joseph" <joseph.cihula@xxxxxxxxx> wrote:
> > Unfortunately, the frametable is only contiguous in the virtual address 
> > space,
> > so one can't simply take __pa() of its start and end.  And since it is quite
> > large, iterating through each page to gets its phys addr adds a perceptible
> > delay when that check has to be done for each page of physical memory (as is
> > the case in the only caller, the VT-d routine that maps memory for dom0).  
> > But
> > it also appears that we can't convert the phys addr arguments into their 
> > virt
> > addrs to compare with the contiguous frametable range because they will
> > convert to the DIRECTMAP va's instead.
> The frametable is allocated in aligned 2MB chunks. So you can check at that
> granularity rather than 4kB.

That made it just a single iteration on a 2GB system, but what fn should be 
used to convert the va to pa?  __pa() isn't converting this correctly.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.