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 Xen-devel@lists.xen.org https://lists.xen.org/xen-devel