Hi, Maybe it''s a dumb question, but I''m actually trying to understand how the memory allocation works within Xen. I try to give 128MB to a domU and see if it increases for example when I "nano" a 500mb file, but the process just get killed when it reachs the 128MB memory limit. How do I configure the guests so they can ask for more memory until a limit is reached ? Thanks a lot for your help. Best regards -- Sébastien Riccio SwissCenter / OpenBusiness SA sr@openbusiness.com ________________________________________________ OpenBusiness S.A. World Trade Center Av Gratta-Paille 1-2 Tel: +41 21 641 1010 CH-1000 Lausanne 30 FAX: +41 21 641 1011 Switzerland www.openbusiness.ch __________________________________________________________________________ Disclaimer This email is confidential and intended solely for the use of the individual to whom it is addressed. Any views or opinions presented are solely those of the author and do not necessarily represent those of the OpenBusiness Group. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing, or copy-ing of this email is strictly prohibited. If you have received this email in error please notify the OpenBusiness help-desk by telephone on +41 21 641 10 10. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Not such a dumb question. As far as I know, memory ballooning is only done from the control partition (dom0) nowadays, explicitly. It would be nice for something inside of a domU''s kernel or userspace to watch some metric and then ask nicely for more memory if needed. Paravirtual drivers can do this for sure, but I haven''t poked around enough to know which available ones do and how to trigger it. Peace. Andrew On Mon, 2007-01-08 at 11:21 +0100, Sébastien RICCIO wrote:> Hi, > > Maybe it''s a dumb question, but I''m actually trying to understand how > the memory allocation works within Xen. > > I try to give 128MB to a domU and see if it increases for example when I > "nano" a 500mb file, but the process > just get killed when it reachs the 128MB memory limit. > > How do I configure the guests so they can ask for more memory until a > limit is reached ? > > Thanks a lot for your help. > > Best regards_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hi Andrew, Thank you a lot for your answer. I will try to play with this a little. Best regards. -- Sébastien Riccio SwissCenter / OpenBusiness SA sr@openbusiness.com Andrew D. Ball a écrit :> Not such a dumb question. As far as I know, memory ballooning is only > done from the control partition (dom0) nowadays, explicitly. > > It would be nice for something inside of a domU''s kernel or userspace to > watch > some metric and then ask nicely for more memory if needed. Paravirtual > drivers > can do this for sure, but I haven''t poked around enough to know which > available > ones do and how to trigger it. > > Peace. > Andrew > > On Mon, 2007-01-08 at 11:21 +0100, Sébastien RICCIO wrote: > >> Hi, >> >> Maybe it''s a dumb question, but I''m actually trying to understand how >> the memory allocation works within Xen. >> >> I try to give 128MB to a domU and see if it increases for example when I >> "nano" a 500mb file, but the process >> just get killed when it reachs the 128MB memory limit. >> >> How do I configure the guests so they can ask for more memory until a >> limit is reached ? >> >> Thanks a lot for your help. >> >> Best regards >> > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
hi I read the code of balloon part, I am confused about the meaning and function of " mfn = 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
mfn = machine frame number, it is an index to a page in the real memory of the system. gmfn = guest''s machine frame number and it sometimes called gpfn or just pfn. Guests have a translation table between their own virtualized pseudo physical 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.> -----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 = 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 >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
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" <guy@neocleus.com> wrote:> mfn = machine frame number, it is an index to a page in the real memory of the > system. > gmfn = guest''s machine frame number and it sometimes called gpfn or just pfn. > Guests have a translation table between their own virtualized pseudo physical > 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. > >> -----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 = 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 >> > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Thank you all for all replys In the HVM ,xen maintain guestos p2m table ,while in the paravirt ,guest maintain its own p2m,is it right? Then in the paravirt case, if a VM''s memory maxsize is 512M,and it is allocated 256M by "xm mem-set ",and it maybe only use 128M for running its OS and application , then what does its v2p table(or it is v2m talbe ,I am not for sure) and p2m table look like in the aspect of size? and what about guestOS''s mem_map size,is it 512M or 256M or 128M or something else? another confusion for me is how does guestOS maitain its p2m table (linux has the v2p table ,but not p2m table),and what about the working procession for these tables? could you help me Thanks in advance Keir Fraser 写道:> 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" <guy@neocleus.com> wrote: > > >> mfn = machine frame number, it is an index to a page in the real memory of the >> system. >> gmfn = guest''s machine frame number and it sometimes called gpfn or just pfn. >> Guests have a translation table between their own virtualized pseudo physical >> 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. >> >> >>> -----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 = 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 >>> >>> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel