[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] sched/null: skip vCPUs on the waitqueue that are blocked
On Tue, Dec 19, 2017 at 07:25:51AM -0700, Jan Beulich wrote: > >>> On 19.12.17 at 15:16, <roger.pau@xxxxxxxxxx> wrote: > > --- a/xen/common/sched_null.c > > +++ b/xen/common/sched_null.c > > @@ -781,6 +781,10 @@ static struct task_slice null_schedule(const struct > > scheduler *ops, > > { > > list_for_each_entry( wvc, &prv->waitq, waitq_elem ) > > { > > + if ( test_bit(_VPF_down, &wvc->vcpu->pause_flags) ) > > + /* Skip vCPUs that are down. */ > > + continue; > > If such a custom check is indeed necessary here (looks to rather be > something generic scheduling code should be dealing with), why > would you take into consideration only this one VPF bit? I know that at least when a vCPU is brought up a call to vcpu_wake happens and the vCPU is scheduled. The same happens for unpause and some of the other events, but I'm not sure whether it applies to all of them. IMHO 'down' was the clearer one since there's no chance the vCPU is going to run in the near future if it's not brought up. Other pause_flags like 'blocked_in_xen' or 'migrating' seem more temporary. Thanks, Roger. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |