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

Re: [Xen-ia64-devel] Re: [PATCH]: ptc.ga for SMP-g



On Fri, Mar 31, 2006 at 10:42:13AM +0800, Xu, Anthony wrote:
> >From: Isaku Yamahata >Sent: 2006年3月31日 9:23
> >> PAGE_OFFSET + 64MB is covered by a tr, isn't it ?
> >
> >[PAGE_OFFSET, PAGE_OFFSET + KERNEL_TR_PAGE_SIZE - 1] is covered.
> >Here KERNEL_TR_PAGE_SIZE = 64MB which is defined
> >in linux/asm-ia64/pgtable.h.
> >
> >For safety, please consider
> >PAGE_OFFSET + KERNEL_TR_PAGE_SIZE * n + (small offsets).
> >
> 
> This is true in x86.
> But it is not true in ia64.
> 
> PAGE_OFFSET                   __IA64_UL_CONST(0xe000000000000000)
> Linux kernel starts from 0xa000000100000000.

It's right that Linux/ia64 kernel text and statically allocated data
are in [0xa000000100000000, ...].
However dynamically allocated pages's virtual address are in
the area of [PAGE_OFFSET, ...].
That is, values which is returned by __get_free_pages() (and its family)
are of PAGE_OFFSET + (some offsets).

Please see the definition of __pa() and __va() of Linux/ia64.
# define __pa(x)                ((x) - PAGE_OFFSET)
# define __va(x)                ((x) + PAGE_OFFSET)



-- 
yamahata

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

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