37 lines
1.6 KiB
Diff
37 lines
1.6 KiB
Diff
|
xend/pvscsi: fix passing of SCSI control LUNs
|
||
|
|
||
|
Currently pvscsi can not pass SCSI devices that have just a scsi_generic node.
|
||
|
In the following example sg3 is a control LUN for the disk sdd.
|
||
|
But vscsi=['4:0:2:0,0:0:0:0'] does not work because the internal 'devname'
|
||
|
variable remains None. Later writing p-devname to xenstore fails because None
|
||
|
is not a valid string variable.
|
||
|
|
||
|
Since devname is used for just informational purpose use sg also as devname.
|
||
|
|
||
|
carron:~ $ lsscsi -g
|
||
|
[0:0:0:0] disk ATA FK0032CAAZP HPF2 /dev/sda /dev/sg0
|
||
|
[4:0:0:0] disk HP P2000G3 FC/iSCSI T100 /dev/sdb /dev/sg1
|
||
|
[4:0:1:0] disk HP P2000G3 FC/iSCSI T100 /dev/sdc /dev/sg2
|
||
|
[4:0:2:0] storage HP HSV400 0950 - /dev/sg3
|
||
|
[4:0:2:1] disk HP HSV400 0950 /dev/sdd /dev/sg4
|
||
|
[4:0:3:0] storage HP HSV400 0950 - /dev/sg5
|
||
|
[4:0:3:1] disk HP HSV400 0950 /dev/sde /dev/sg6
|
||
|
|
||
|
---
|
||
|
tools/python/xen/util/vscsi_util.py | 2 ++
|
||
|
1 file changed, 2 insertions(+)
|
||
|
|
||
|
Index: xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py
|
||
|
===================================================================
|
||
|
--- xen-4.1.2-testing.orig/tools/python/xen/util/vscsi_util.py
|
||
|
+++ xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py
|
||
|
@@ -105,6 +105,8 @@ def _vscsi_get_scsidevices_by_lsscsi(opt
|
||
|
devname = None
|
||
|
try:
|
||
|
sg = s[-1].split('/dev/')[1]
|
||
|
+ if devname is None:
|
||
|
+ devname = sg
|
||
|
scsi_id = _vscsi_get_scsiid(sg)
|
||
|
except IndexError:
|
||
|
sg = None
|