hostdev: Add iSCSI hostdev XML

Introduce a new structure to handle an iSCSI host device based on the
existing virDomainHostdevSubsysSCSI by adding a "protocol='iscsi'" to
the <source/> element. The existing scsi_host subsystem RNG was modified
to read an optional "protocol='adapter'", although it won't be written
out nor is it documented as an option (by choice).

The new hostdev structure mimics the existing <disk/> element for an
iSCSI device (network) device. New XML is:

  <hostdev mode='subsystem' type='scsi' managed='yes'>
    <source protocol='iscsi' name='iqn.1992-01.com.example'>
      <host name='example.org' port='3260'/>
      <auth username='myname'>
        <secret type='iscsi' usage='mycluster_myname'/>
      </auth>
    </source>
    <address type='drive' controller='0' bus='0' target='2' unit='5'/>
  </hostdev>

The controller element will mimic the existing scsi_host code insomuch
as when 'lsi' and 'virtio-scsi' are used.
This commit is contained in:
John Ferlan
2014-07-09 10:08:34 -04:00
parent c3f4942939
commit 54ac483e68
13 changed files with 530 additions and 70 deletions

View File

@@ -361,6 +361,11 @@ mymain(void)
DO_TEST_DIFFERENT("hostdev-scsi-autogen-address");
DO_TEST("hostdev-scsi-lsi-iscsi");
DO_TEST("hostdev-scsi-lsi-iscsi-auth");
DO_TEST("hostdev-scsi-virtio-iscsi");
DO_TEST("hostdev-scsi-virtio-iscsi-auth");
DO_TEST_DIFFERENT("s390-defaultconsole");
DO_TEST("pcihole64");