Index: sys/dev/xen/blkfront/blkfront.c =================================================================== --- sys/dev/xen/blkfront/blkfront.c +++ sys/dev/xen/blkfront/blkfront.c @@ -1439,7 +1439,7 @@ if (strcmp(xenbus_get_type(dev), "vbd") != 0) return (ENXIO); - if (xen_hvm_domain() && xen_disable_pv_disks != 0) + if (xen_pv_disks_disabled()) return (ENXIO); if (xen_hvm_domain()) { Index: sys/x86/include/xen/xen-os.h =================================================================== --- sys/x86/include/xen/xen-os.h +++ sys/x86/include/xen/xen-os.h @@ -39,6 +39,9 @@ /* If non-zero, the hypervisor has been configured to use a direct vector */ extern int xen_vector_callback_enabled; +/* tunable for disabling PV disks */ +extern int xen_disable_pv_disks; + static inline bool xen_support_evtchn_rebind(void) { @@ -46,6 +49,13 @@ return (!xen_hvm_domain() || xen_vector_callback_enabled); } +static inline bool +xen_pv_disks_disabled(void) +{ + + return (xen_hvm_domain() && xen_disable_pv_disks != 0); +} + #endif /* !__ASSEMBLY__ */ #endif /* _MACHINE_X86_XEN_XEN_OS_H_ */ Index: sys/xen/xen-os.h =================================================================== --- sys/xen/xen-os.h +++ sys/xen/xen-os.h @@ -101,7 +101,6 @@ extern shared_info_t *HYPERVISOR_shared_info; -extern int xen_disable_pv_disks; extern int xen_disable_pv_nics; extern bool xen_suspend_cancelled;