[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen/arm: warn if dom0_mem is not specified
On Tue, 21 Feb 2017, Julien Grall wrote: > Hi Stefano, > > On 21/02/17 17:26, Stefano Stabellini wrote: > > On Tue, 21 Feb 2017, Wei Liu wrote: > > > On Mon, Feb 20, 2017 at 10:22:06AM -0800, Stefano Stabellini wrote: > > > > The default dom0_mem is 128M which is not sufficient to boot a Ubuntu > > > > based Dom0. It is not clear what a better default value could be. > > > > > > > > Instead, loudly warn the user when dom0_mem is unspecified and wait 3 > > > > secs. Then use 512M. > > > > > > > > Update the docs to specify that dom0_mem is required on ARM. (The > > > > current xen-command-line document does not actually reflect the current > > > > behavior of dom0_mem on ARM correctly.) > > > > > > > > Signed-off-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > > > > --- > > > > Changes in v3: > > > > - update docs > > > > --- > > > > docs/misc/xen-command-line.markdown | 8 +++++++- > > > > xen/arch/arm/domain_build.c | 22 +++++++++++++++++----- > > > > 2 files changed, 24 insertions(+), 6 deletions(-) > > > > > > > > diff --git a/docs/misc/xen-command-line.markdown > > > > b/docs/misc/xen-command-line.markdown > > > > index a11fdf9..c0106fb 100644 > > > > --- a/docs/misc/xen-command-line.markdown > > > > +++ b/docs/misc/xen-command-line.markdown > > > > @@ -603,7 +603,13 @@ For example, with `dom0_max_vcpus=4-8`: > > > > > 8 | 8 > > > > > 10 | 8 > > > > > > > > -### dom0\_mem > > > > +### dom0\_mem (ARM) > > > > +> `= <size>` > > > > + > > > > +Set the amount of memory for the initial domain (dom0). It must be > > > > +greater than zero. This parameter is required. > > > > + > > > > +### dom0\_mem (x86) > > > > > `= List of ( min:<size> | max:<size> | <size> )` > > > > > > > > Set the amount of memory for the initial domain (dom0). If a size is > > > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > > > > index c97a1f5..db7471f 100644 > > > > --- a/xen/arch/arm/domain_build.c > > > > +++ b/xen/arch/arm/domain_build.c > > > > @@ -1,4 +1,5 @@ > > > > #include <xen/config.h> > > > > +#include <xen/delay.h> > > > > #include <xen/init.h> > > > > #include <xen/compile.h> > > > > #include <xen/lib.h> > > > > @@ -31,14 +32,11 @@ integer_param("dom0_max_vcpus", opt_dom0_max_vcpus); > > > > > > > > int dom0_11_mapping = 1; > > > > > > > > -#define DOM0_MEM_DEFAULT 0x8000000 /* 128 MiB */ > > > > -static u64 __initdata dom0_mem = DOM0_MEM_DEFAULT; > > > > +static u64 __initdata dom0_mem; > > > > > > > > static void __init parse_dom0_mem(const char *s) > > > > { > > > > dom0_mem = parse_size_and_unit(s, &s); > > > > - if ( dom0_mem == 0 ) > > > > - dom0_mem = DOM0_MEM_DEFAULT; > > > > } > > > > custom_param("dom0_mem", parse_dom0_mem); > > > > > > > > @@ -2125,7 +2123,21 @@ int construct_dom0(struct domain *d) > > > > BUG_ON(d->vcpu[0] == NULL); > > > > BUG_ON(v->is_initialised); > > > > > > > > - printk("*** LOADING DOMAIN 0 ***\n"); > > > > + if ( dom0_mem > 0 ) > > > > + printk("*** LOADING DOMAIN 0 ***\n"); > > > > + else > > > > + { > > > > + int i; > > > > + printk("*** PLEASE SPECIFY dom0_mem PARAMETER - USING 512M FOR > > > > NOW ***\n"); > > > > + for (i = 0; i < 3; i++) > > > > + { > > > > + printk("%d...", i+1); > > > > + mdelay(1000); > > > > > > There is infrastructure in Xen to print warning messages, so that we > > > don't add delays unnecessarily. > > > > > > See warning.h:warning_add. > > > > I added the delay on purpose to force the user to specify dom0_mem, as > > we cannot find a way to set a sensible default. The alternative is to > > panic. > > warning_add will gather the warning message and then will be printed at the > end of the boot with a delay. This is what is used for sync_console message > and also FEP on x86. > > I think this is a good idea to gather all the warnings and print them at the > end. At least it is not lost in the noise. Yes, warning_add works very well actually. I'll use it. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |