On 12.01.2024 11:43, Andrew Cooper wrote:
> On 12/01/2024 10:37 am, Jan Beulich wrote:
>> On 12.01.2024 00:13, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/hvm/vmx/vmx.c
>>> +++ b/xen/arch/x86/hvm/vmx/vmx.c
>>> @@ -1551,7 +1551,10 @@ static void cf_check vmx_set_nonreg_state(struct 
>>> vcpu *v,
>>>  {
>>>      vmx_vmcs_enter(v);
>>>  
>>> -    __vmwrite(GUEST_ACTIVITY_STATE, nrs->vmx.activity_state);
>>> +    if ( nrs->vmx.activity_state )
>>> +        domain_crash(v->domain, "Attempt to set activity_state %#lx\n",
>>> +                     nrs->vmx.activity_state);
>> Might be useful to log the offending vCPU here?
> 
> Already covered.  the innards of __domain_crash() does:
> 
>     else if ( d == current->domain )
>     {
>         printk("Domain %d (vcpu#%d) crashed on cpu#%d:\n",
>         ...

Except that afaict v != current here at all times (at least as far as
current use of the function goes).

Jan

Reply via email to