Hi Luca, > On 14 Apr 2021, at 10:14, Luca Fancellu <luca.fance...@arm.com> wrote: > > This patch adds a comment in create_domUs() right before > domain_create() to explain the importance of the pre-increment > operator on the variable max_init_domid, to ensure that the > domid 0 is allocated only during start_xen() function by the > create_dom0() and not on any other possible code path to the > domain_create() function. > > Signed-off-by: Luca Fancellu <luca.fance...@arm.com> Reviewed-by: Bertrand Marquis <bertrand.marq...@arm.com>
Cheers, Bertrand > --- > Changes in v4: > - Change to the commit title > Changes in v3: > - removed check introduced in v2. > --- > xen/arch/arm/domain_build.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index 359957dc1b..b1d7b9849f 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -2508,6 +2508,11 @@ void __init create_domUs(void) > GUEST_VPL011_SPI - 32 + 1); > } > > + /* > + * The variable max_init_domid is initialized with zero, so here it's > + * very important to use the pre-increment operator to call > + * domain_create() with a domid > 0. (domid == 0 is reserved for > Dom0) > + */ > d = domain_create(++max_init_domid, &d_cfg, false); > if ( IS_ERR(d) ) > panic("Error creating domain %s\n", dt_node_name(node)); > -- > 2.17.1 > >