On 29/03/2019 15:08, Juergen Gross wrote: > diff --git a/xen/common/schedule.c b/xen/common/schedule.c > index 6b5d454630..d1a958143a 100644 > --- a/xen/common/schedule.c > +++ b/xen/common/schedule.c > @@ -256,6 +256,7 @@ static void sched_spin_unlock_double(spinlock_t *lock1, > spinlock_t *lock2, > int sched_init_vcpu(struct vcpu *v, unsigned int processor) > { > struct domain *d = v->domain; > + struct sched_item item = { .vcpu = v }; > > v->processor = processor; > > @@ -267,7 +268,7 @@ int sched_init_vcpu(struct vcpu *v, unsigned int > processor) > init_timer(&v->poll_timer, poll_timer_fn, > v, v->processor); > > - v->sched_priv = SCHED_OP(dom_scheduler(d), alloc_vdata, v, > + v->sched_priv = SCHED_OP(dom_scheduler(d), alloc_vdata, &item, > d->sched_priv);
I realise this is perhaps an over-the-top request, but can we see about doing more here? SCHED_OP() is a thoroughly objectionable piece of obfuscation, which breaks cscope/ctags and also results in especially poor code generation. Given that we are changing the interface anyway and touching all codepaths, would you mind also adding static inline wrappers like I started with 340edc3 ? TBH, I'm even happy to give this a go and give you the back the resulting tree, if you'd prefer. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel