]> xenbits.xensource.com Git - people/dariof/xen.git/commitdiff
x86: hap_enabled() is HVM-only
authorJan Beulich <jbeulich@suse.com>
Fri, 28 Sep 2018 15:13:38 +0000 (17:13 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 28 Sep 2018 15:13:38 +0000 (17:13 +0200)
There at least two cases where the field so far got accessed for PV
guests as well: One is in iommu_construct(), via iommu_use_hap_pt(),
and the other is
arch_domain_create()
-> paging_domain_init()
   -> p2m_init()
      -> p2m_init_hostp2m()
         -> p2m_init_one()
            -> p2m_initialise()
It just so happens that the field currently lives in struct hvm_domain
at an offset larger than sizeof(struct pv_domain).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/include/asm-x86/hvm/domain.h

index 172d27ff49776fe64dd8e886c72ff83b56653b02..80b2ab041e64fdb72d9fef5633718c870a9cfa94 100644 (file)
@@ -195,7 +195,7 @@ struct hvm_domain {
 };
 
 #ifdef CONFIG_HVM
-#define hap_enabled(d)  ((d)->arch.hvm.hap_enabled)
+#define hap_enabled(d)  (is_hvm_domain(d) && (d)->arch.hvm.hap_enabled)
 #else
 #define hap_enabled(d)  ({(void)(d); false;})
 #endif