iSCSI block driver
commitc589b24972794a92fe3b5d6b9f4f09ef29e95460
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Tue, 25 Oct 2011 08:24:24 +0000 (25 19:24 +1100)
committerKevin Wolf <kwolf@redhat.com>
Fri, 28 Oct 2011 17:25:48 +0000 (28 19:25 +0200)
tree4bfaa04a68297dc7a36fa8ed52011be535df3946
parentb5a12aa204f842c8010ac9d2e4b115114dbf09f0
iSCSI block driver

This provides built-in support for iSCSI to QEMU.

This has the advantage that the iSCSI devices need not be made visible to the host, which is useful if you have very many virtual machines and very many iscsi devices.
It also has the benefit that non-root users of QEMU can access iSCSI devices across the network without requiring root privilege on the host.

This driver interfaces with the multiplatform posix library for iscsi initiator/client access to iscsi devices hosted at
    git://github.com/sahlberg/libiscsi.git

The patch adds the driver to interface with the iscsi library.
It also updated the configure script to
* by default, probe is libiscsi is available and if so, build
  qemu against libiscsi.
* --enable-libiscsi
  Force a build against libiscsi. If libiscsi is not available
  the build will fail.
* --disable-libiscsi
  Do not link against libiscsi, even if it is available.

When linked with libiscsi, qemu gains support to access iscsi resources such as disks and cdrom directly, without having to make the devices visible to the host.

You can specify devices using a iscsi url of the form :
iscsi://[<username>[:<password>@]]<host>[:<port]/<target-iqn-name>/<lun>
When using authentication, the password can optionally be set with
LIBISCSI_CHAP_PASSWORD="password" to avoid it showing up in the process list

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Makefile.objs
block/iscsi.c [new file with mode: 0644]
configure
trace-events