Print this page
NEX-16215 xvdi_init_dev() truncates the unit address to 7 characters
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
8019 Some PV devices should not be configured in HVM mode
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Basil Crow <basil.crow@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
re #13140 rb4270 hvm_sd module missing dependencies on scsi and cmlb
re #13166 rb4270 Check for Xen HVM even if CPUID signature returns Microsoft Hv
re #13187 rb4270 Fix Xen HVM related warnings
*** 24,33 ****
--- 24,34 ----
* Use is subject to license terms.
*/
/*
* Copyright (c) 2014 by Delphix. All rights reserved.
+ * Copyright 2018 Nexenta Systems, Inc.
*/
/*
* Xen virtual device driver interfaces
*/
*** 250,260 ****
boolean_t backend;
char xsnamebuf[TYPICALMAXPATHLEN];
char *xsname;
void *prop_str;
unsigned int prop_len;
! char unitaddr[8];
devcls = ddi_prop_get_int(DDI_DEV_T_ANY, dip,
DDI_PROP_DONTPASS, "devclass", XEN_INVAL);
vdevnum = ddi_prop_get_int(DDI_DEV_T_ANY, dip,
DDI_PROP_DONTPASS, "vdev", VDEV_NOXS);
--- 251,261 ----
boolean_t backend;
char xsnamebuf[TYPICALMAXPATHLEN];
char *xsname;
void *prop_str;
unsigned int prop_len;
! char unitaddr[16];
devcls = ddi_prop_get_int(DDI_DEV_T_ANY, dip,
DDI_PROP_DONTPASS, "devclass", XEN_INVAL);
vdevnum = ddi_prop_get_int(DDI_DEV_T_ANY, dip,
DDI_PROP_DONTPASS, "vdev", VDEV_NOXS);
*** 331,341 ****
/*
* The unit-address for frontend devices is the name of the
* of the xenstore node containing the device configuration
* and is contained in the 'vdev' property.
* VIF devices are named using an incrementing integer.
! * VBD devices are either named using the 16-bit dev_t value
* for linux 'hd' and 'xvd' devices, or a simple integer value
* in the range 0..767. 768 is the base value of the linux
* dev_t namespace, the dev_t value for 'hda'.
*/
(void) snprintf(unitaddr, sizeof (unitaddr), "%d", vdevnum);
--- 332,342 ----
/*
* The unit-address for frontend devices is the name of the
* of the xenstore node containing the device configuration
* and is contained in the 'vdev' property.
* VIF devices are named using an incrementing integer.
! * VBD devices are either named using the 32-bit dev_t value
* for linux 'hd' and 'xvd' devices, or a simple integer value
* in the range 0..767. 768 is the base value of the linux
* dev_t namespace, the dev_t value for 'hda'.
*/
(void) snprintf(unitaddr, sizeof (unitaddr), "%d", vdevnum);