Hi, all, XENMEM_machphys_mfn_list command is used to acquire the mapping between the pseudo-physical to machine. And the hypercall will fill in the struct xen_machphys_mfn_list. I do not understand "This table is an array of pseudo-physical frame numbers of the start of 2MB extents, corresponding to 2MB rangs in the pseudo-physical address space". "This table" means the array pointed by xen_machphys_mfn_list.extent_start. I am reading the code about this struct, still in confusion. :-) Who can help me? -- Best Regards, -- Lin.Yu _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Lin.Yu wrote:> > XENMEM_machphys_mfn_list command is used to acquire the mapping between > the pseudo-physical to machine. And the hypercall will fill in the > struct xen_machphys_mfn_list. > > I do not understand "This table is an array of pseudo-physical frame > numbers of the start of 2MB extents, corresponding to 2MB rangs in the > pseudo-physical address space". > "This table" means the array pointed by xen_machphys_mfn_list.extent_start. > > I am reading the code about this struct, still in confusion. > :-) > Who can help me? >AFAIU, here "table" is nothing more than an array of xen_pfn_ts. Only complication is, mfns returned are `base-mfns'' for 2MB memory regions. For example, if mfn 100 is returned, it means mfns 100-612 hold the 2MB region (612 = 100 + 512; 512 pages make 2MB) -- bvk-chaitanya _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Got it. But why 2MB? I have no any clue about it. -- Lin On Fri, Jul 18, 2008 at 5:10 PM, BVK Chaitanya < bayapuneni_chaitanya@symantec.com> wrote:> Lin.Yu wrote: > >> >> XENMEM_machphys_mfn_list command is used to acquire the mapping between >> the pseudo-physical to machine. And the hypercall will fill in the struct >> xen_machphys_mfn_list. >> >> I do not understand "This table is an array of pseudo-physical frame >> numbers of the start of 2MB extents, corresponding to 2MB rangs in the >> pseudo-physical address space". >> "This table" means the array pointed by >> xen_machphys_mfn_list.extent_start. >> >> I am reading the code about this struct, still in confusion. >> :-) >> Who can help me? >> >> > > AFAIU, here "table" is nothing more than an array of xen_pfn_ts. > > Only complication is, mfns returned are `base-mfns'' for 2MB memory regions. > > For example, if mfn 100 is returned, it means mfns 100-612 hold the 2MB > region (612 = 100 + 512; 512 pages make 2MB) > > > -- > bvk-chaitanya >-- Best Regards, -- Lin.Yu _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel