From mboxrd@z Thu Jan 1 00:00:00 1970 From: tgh Subject: Re: question about gmfn_to_mfn() Date: Mon, 26 Mar 2007 09:09:10 +0800 Message-ID: <46071D36.8070506@ncic.ac.cn> References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Keir Fraser Cc: Guy Zana , xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Thank you all for all replys In the HVM ,xen maintain guestos p2m table ,while in the paravirt ,guest=20 maintain its own p2m,is it right? Then in the paravirt case, if a VM's memory maxsize is 512M,and it is=20 allocated 256M by "xm mem-set ",and it maybe only use 128M for running=20 its OS and application , then what does its v2p table(or it is v2m talbe=20 ,I am not for sure) and p2m table look like in the aspect of size? and=20 what about guestOS's mem_map size,is it 512M or 256M or 128M or=20 something else? another confusion for me is how does guestOS maitain its p2m table=20 (linux has the v2p table ,but not p2m table),and what about the working=20 procession for these tables? could you help me Thanks in advance Keir Fraser =E5=86=99=E9=81=93: > GPFN is guest machine frame number. It equals GPFN for fully-translated > (e.g., HVM guests). It equals MFN for ordinary PV guests which maintain > their own p2m translation table. > > -- Keir > > > On 23/3/07 06:56, "Guy Zana" wrote: > > =20 >> mfn =3D machine frame number, it is an index to a page in the real mem= ory of the >> system. >> gmfn =3D guest's machine frame number and it sometimes called gpfn or = just pfn. >> Guests have a translation table between their own virtualized pseudo p= hysical >> memory and the real machine memory -> this is exactly what gmfn_to_mfn= does. >> Pfn is a generic term that might be used in all kind of situations so = you >> should understand from the context. >> >> Guy.=20 >> >> =20 >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of tgh >>> Sent: Friday, March 23, 2007 5:31 AM >>> To: xen-devel@lists.xensource.com >>> Subject: [Xen-devel] question about gmfn_to_mfn() >>> >>> hi >>> I read the code of balloon part, I am confused about the >>> meaning and function of " mfn =3D gmfn_to_mfn(d, gmfn);" >>> what is gmfn and and what is mfn? and" #define gmfn_to_mfn(_d, >>> gpfn) mfn_x(sh_gfn_to_mfn(_d, gpfn))" >>> it seems that gmfn and gpfn is the same or what is the >>> trick in it ? >>> >>> I am confused about it >>> >>> could you help me >>> Thanks in advance >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> =20 >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> =20 > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > > =20