xen/netfront: introduce xen_pv_nics_disabled()

ARM guest is considered as HVM but it only supports PV nics (no
emulation available).

Submitted by: Elliott Mitchell <ehem+freebsd@m5p.com>
Reviewed by: royger
Differential Revision: https://reviews.freebsd.org/D29405
This commit is contained in:
Julien Grall 2015-10-16 19:26:35 +01:00 committed by Roger Pau Monné
parent c89f1f12b0
commit 5f70008327
3 changed files with 11 additions and 2 deletions

View File

@ -378,7 +378,7 @@ static int
netfront_probe(device_t dev)
{
if (xen_hvm_domain() && xen_disable_pv_nics != 0)
if (xen_pv_nics_disabled())
return (ENXIO);
if (!strcmp(xenbus_get_type(dev), "vif")) {

View File

@ -43,6 +43,16 @@
/* If non-zero, the hypervisor has been configured to use a direct vector */
extern int xen_vector_callback_enabled;
/* tunable for disabling PV nics */
extern int xen_disable_pv_nics;
static inline bool
xen_pv_nics_disabled(void)
{
return (xen_hvm_domain() && xen_disable_pv_nics != 0);
}
#endif /* !__ASSEMBLY__ */
#endif /* _MACHINE_X86_XEN_XEN_OS_H_ */

View File

@ -75,7 +75,6 @@ xen_get_console_evtchn(void)
extern shared_info_t *HYPERVISOR_shared_info;
extern int xen_disable_pv_disks;
extern int xen_disable_pv_nics;
extern bool xen_suspend_cancelled;