[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2] credit: generalize __vcpu_has_soft_affinity()



>>> On 06.03.15 at 14:23, <dario.faggioli@xxxxxxxxxx> wrote:
> Which means that, yes, this part of the condition must loose the '!', or
> have the arguments of the call to cpumask_subset() switched. I
> personally prefer the former:
> 
>     return !cpumask_subset(cpupool_online_cpumask(vc->domain->cpupool),
>                            vc->cpu_soft_affinity) &&
>            cpumask_subset(vc->cpu_soft_affinity, vc->cpu_hard_affinity) &&
>            cpumask_intersects(vc->cpu_soft_affinity, mask);

The form without ! and with operands swapped isn't correct afaict,
since subset(x,y) is not the same as !subset(y,x). In particular
when the two are identical, they are also subsets of one another.
Which is precisely a case you don't want the "soft" scheduling
cycle to be gone through.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.