On 03/01/17 16:01, Boris Ostrovsky wrote:
>>
>> +static void avic_dump(unsigned char ch)
>> +{
>> + struct domain *d;
>> + struct vcpu *v;
>> +
>> + printk("*********** SVM AVIC Statistics **************\n");
>> +
>> + rcu_read_lock(&domlist_read_lock);
>> +
>> + for_each_domain ( d )
>> + {
>> + if ( !is_hvm_domain(d) )
> || !svm_avic_vcpu_enabled(d->v[0]) (or something along these lines)?
It isn't safe to deference the vcpu array like this, which in turn
highlights that the avic predicate should be per-domain, not per-cpu.
Under no circumstances should we have AVIC on some vcpus but not others
of the same domain.
~Andrew
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel