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

Re: [Xen-devel] [PATCH v3 1/1] xen: move TLB-flush filtering out into populate_physmap during vm creation



On Thu, 2016-09-08 at 11:50 +0100, Wei Liu wrote:
> On Thu, Sep 08, 2016 at 01:30:03PM +0800, Dongli Zhang wrote:
>
> > diff --git a/xen/common/schedule.c b/xen/common/schedule.c
> > index 32a300f..593541a 100644
> > --- a/xen/common/schedule.c
> > +++ b/xen/common/schedule.c
> > @@ -1376,6 +1376,11 @@ static void schedule(void)
> >  
> >      next = next_slice.task;
> >  
> > +    /* Set already_scheduled to 1 when this domain gets scheduled
> > for the
> > +     * first time */
> > +    if ( next->domain->already_scheduled == 0 )
> > +        next->domain->already_scheduled = 1;
> > +
> Can be simplified by omitting the "if" altogether.  
>
Are you sure? I mean looking at the cases when the flag is already true
(which means, during the life of a domain, basically **always** except
a handful of instances after creation), what costs less, a check that
is always false, or a write that is always updating a value with its
current value?

And I'm not being ironic or anything, I honestly am not sure and this
is a genuine question.

> And use "true" here.
> 
Yeah, or just:

 if ( unlikely(!next->domain->already_scheduled) )
     ...

> Wei.
-- 
<<This happens because I choose it to happen!>> (Raistlin Majere)
-----------------------------------------------------------------
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)

Attachment: signature.asc
Description: This is a digitally signed message part

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

 


Rackspace

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