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

Re: [Xen-devel] [PATCH v10 11/20] x86/VPMU: Interface for setting PMU mode and flags



>>> On 18.09.14 at 23:50, <boris.ostrovsky@xxxxxxxxxx> wrote:
> On 09/18/2014 12:11 AM, Tian, Kevin wrote:
>>> From: Boris Ostrovsky [mailto:boris.ostrovsky@xxxxxxxxxx]
>>> +{
>>> +    unsigned i, j, allbutself_num, tasknum, mycpu;
>>> +    static s_time_t start;
>>> +    static struct tasklet **sync_task;
>>> +    struct vcpu *curr_vcpu = current;
>>> +    static struct vcpu *sync_vcpu;
>>> +    int ret = 0;
>>> +
>>> +    tasknum = allbutself_num = num_online_cpus() - 1;
>>> +
>>> +    if ( sync_task ) /* if set, we are in hypercall continuation */
>>> +    {
>>> +        if ( (sync_vcpu != NULL) && (sync_vcpu != curr_vcpu) )
>>> +            /* We are not the original caller */
>>> +            return -EAGAIN;
>> I assume hypercall continuation will happen on original vcpu context. Under
>> which situation the hypercall will be continued on a different vcpu? If yes,
>> would it be an unbounded situation where you may wait unexpected time
>> to have sync_vcpu==curr_vcpu?
> 
> The continuation call is gone in v11. If we are stuck waiting for more 
> than 5 seconds we'll simply return -EAGAIN and have the caller retry.

That reads wrong, but I'd of course have to see whether the just
wording above is incorrectly reflecting the code changes you did.

Also, both of you - please trim your replies.

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®.