On 02.08.2022 15:51, Dario Faggioli wrote: > If dom0_vcpus_pin is used, make sure the pinning is only done for > dom0 vcpus, instead of for the hardware domain (which might not be > dom0 at all!).
Hmm, but the control domain may not be either, as it's derived from d->is_privileged. I think ... > --- a/xen/common/sched/core.c > +++ b/xen/common/sched/core.c > @@ -575,7 +575,7 @@ int sched_init_vcpu(struct vcpu *v) > * Initialize affinity settings. The idler, and potentially > * domain-0 VCPUs, are pinned onto their respective physical CPUs. > */ > - if ( is_idle_domain(d) || (is_hardware_domain(d) && opt_dom0_vcpus_pin) ) > + if ( is_idle_domain(d) || (is_control_domain(d) && opt_dom0_vcpus_pin) ) ... for it to be strictly only Dom0, you want to check d->domain_id here. Or else I guess the description wants adjusting. Jan
