On 01.07.2025 12:56, Alejandro Vallejo wrote:
> --- a/xen/arch/x86/include/asm/bootfdt.h
> +++ b/xen/arch/x86/include/asm/bootfdt.h
> @@ -3,6 +3,12 @@
>  #define X86_BOOTFDT_H
>  
>  #include <xen/types.h>
> +#include <public/xen.h>
> +
> +struct arch_boot_domain
> +{
> +    domid_t domid;
> +};
>  
>  struct arch_boot_module
>  {
>[...]
> @@ -1048,11 +1050,11 @@ static struct domain *__init create_dom0(struct 
> boot_info *bi)
>          dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
>  
>      /* Create initial domain.  Not d0 for pvshim. */
> -    bd->domid = get_initial_domain_id();
> -    d = domain_create(bd->domid, &dom0_cfg,
> +    bd->arch.domid = get_initial_domain_id();
> +    d = domain_create(bd->arch.domid, &dom0_cfg,
>                        pv_shim ? 0 : CDF_privileged | CDF_hardware);
>      if ( IS_ERR(d) )
> -        panic("Error creating d%u: %ld\n", bd->domid, PTR_ERR(d));
> +        panic("Error creating d%u: %ld\n", bd->arch.domid, PTR_ERR(d));

This being the only place where the (now) arch-specific field is used, why
does it exist? A local variable would do? And if it's needed for
(supposedly arch-agnostic) hyperlaunch, then it probably shouldn't be
arch-specific? Daniel, Jason?

Jan

Reply via email to