[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] one question on __user_pgd
On 5/19/2009 10:17:58 PM, leilei175@xxxxxxxxx wrote: > in the mm_pin routine, > the function would do > > mm_walk(mm, PAGE_KERNEL_RO); > xen_pgd_pin(__pa(mm->pgd)); /* kernel */ > xen_pgd_pin(__pa(__user_pgd(mm->pgd))); /* user */ > mm->context.pinned = 1; > > then I saw the macro __user_pgd is defined as > > #define __user_pgd(pgd) ((pgd) + PTRS_PER_PGD) > > my question is: > what's the use of __user_pgd? Since 64-bit Xen PV Linux runs in ring3, we use a pair of pgds to isolate the kernel address space. Please look at http://www.kernel.org/doc/ols/2006/ols2006v2-pages-181-192.pdf for the details, for example. > moreover, concerning the action of "pin" the page directory table, > what is the use of it? > > could some one shed some light on these questions? Any explanation is > appreciated. > . Jun Nakajima | Intel Open Source Technology Center _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |