[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 04/23] xen/arm: dom0less use domid 0 for hwdom
On Thu, 6 Mar 2025, Jason Andryuk wrote: > Assign domid 0 to the hwdom. Normally, dom0less does not use domid 0. > > This fixes using the Xen console which assumes domid 0 to use the > hypercall interface. > > Signed-off-by: Jason Andryuk <jason.andryuk@xxxxxxx> I hope there is a check already in the code somewhere that triggers an error if multiple domains are created with domid 0 ? > --- > xen/arch/arm/dom0less-build.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c > index e539bcc762..5a7871939b 100644 > --- a/xen/arch/arm/dom0less-build.c > +++ b/xen/arch/arm/dom0less-build.c > @@ -969,6 +969,7 @@ void __init create_domUs(void) > dt_for_each_child_node(chosen, node) > { > struct domain *d; > + domid_t domid; > struct xen_domctl_createdomain d_cfg = { > .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE, > .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap, > @@ -1121,7 +1122,12 @@ void __init create_domUs(void) > * 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, flags); > + if ( flags & CDF_hardware ) > + domid = 0; > + else > + domid = ++max_init_domid; > + > + d = domain_create(domid, &d_cfg, flags); > if ( IS_ERR(d) ) > panic("Error creating domain %s (rc = %ld)\n", > dt_node_name(node), PTR_ERR(d)); > -- > 2.48.1 >
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |