On 01/28/2016 04:10 PM, Andrew Cooper wrote:
> On 28/01/16 13:52, Razvan Cojocaru wrote:
>> This patch pauses the domain for all writes through the 'ad'
>> pointer in monitor_domctl(), defers a domain_unpause() call until
>> after the CRs are updated for the MONITOR_EVENT_WRITE_CTRLREG
>> case, and makes sure that the domain is paused for both vm_event
>> enable and disable cases in vm_event_domctl().
>> Thanks go to Andrew Cooper for his review and suggestions.
>>
>> Signed-off-by: Razvan Cojocaru <rcojoc...@bitdefender.com>
> 
> Would you mind annotating each of the checks for d != current->domain
> with /* no domain_pause(). */, which is our normal practice.

Of course, no problem.

> I think it might be better to move the current check for
> XEN_DOMCTL_monitor_op into monitor_domctl() itself, to have all checks
> together in one place.

I'll move it.

>> @@ -144,6 +146,8 @@ int monitor_domctl(struct domain *d, struct 
>> xen_domctl_monitor_op *mop)
>>          if ( rc )
>>              return rc;
>>  
>> +        domain_pause(d);
>> +
>>          if ( mop->op == XEN_DOMCTL_MONITOR_OP_ENABLE &&
>>               mop->u.mov_to_msr.extended_capture )
>>          {
>> @@ -154,7 +158,6 @@ int monitor_domctl(struct domain *d, struct 
>> xen_domctl_monitor_op *mop)
> 
> You will need to rework the return -EOPNOTSUPP between these two hunks
> to avoid missing the domain_unpause()
> 
> It would probably be better to pull the check forwards to before the
> domain_pause().

Right, sorry I've missed that. Thanks!

>>          } else
>>              ad->monitor.mov_to_msr_extended = 0;
>>  
>> -        domain_pause(d);
>>          ad->monitor.mov_to_msr_enabled = !status;
>>          domain_unpause(d);
>>          break;
>> @@ -196,9 +199,8 @@ int monitor_domctl(struct domain *d, struct 
>> xen_domctl_monitor_op *mop)
>>
> 
> The other codepaths look fine.


Thanks for the review,
Razvan


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

Reply via email to