qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/1] iSCSI support
@ 2010-12-25 23:44 Ronnie Sahlberg
  2010-12-25 23:44 ` [Qemu-devel] [PATCH] " Ronnie Sahlberg
  0 siblings, 1 reply; 6+ messages in thread
From: Ronnie Sahlberg @ 2010-12-25 23:44 UTC (permalink / raw)
  To: qemu-devel

List,

This is the second version of the patch to add iSCSI support to
QEMU/KVM.
This patch uses the libiscsi clientside library for iscsi at
git://github.com/sahlberg/libiscsi.git

When this library is installed/available QEMU will build with support to
attach directly to a iSCSI LUN without the need to expose these LUNs to the host.

The patch has been updated based on input from review of the initial patch
as well as had CHAP authentication added.

Please review and/or apply
Ronnie Sahlberg

^ permalink raw reply	[flat|nested] 6+ messages in thread
* [Qemu-devel] iSCSI block driver support
@ 2011-02-04  4:37 ronniesahlberg
  2011-02-04  4:37 ` [Qemu-devel] [PATCH] iSCSI support ronniesahlberg
  0 siblings, 1 reply; 6+ messages in thread
From: ronniesahlberg @ 2011-02-04  4:37 UTC (permalink / raw)
  To: qemu-devel

The following patch adds a new block driver to QEMU/KVM for iSCSI.
This utilizes the userspace client library for iscsi at https://github.com/sahlberg/libiscsi and will link with this library if available.

This allows using iSCSI resources with QEMU/KVM without making them visible to the underlying host. Which is very useful when having very large number of iscsi devices, or when you for other reasons do not want to expose these devicdes to others.

  
I have used this patch and installed a RHEL6 system from an iscsi dvd onto a iscsi disk. I have done extensive testing.
Both normally and also running under valgrind (which is very slow)

./x86_64-softmmu/qemu-system-x86_64 -m 1024 --enable-kvm -cdrom iscsi://127.0.0.1:3262/iqn.ronnie.test/2 -drive if=virtio,file=iscsi://127.0.0.1:3262/iqn.ronnie.test/1 -boot c

Please review and/or apply.



This is version 3 of the patch :
Version 3 adds :
  - Fix a bug when writing freed data to the disk
  - Convert TAB to spaces
  - Add tracing functions (From Stefan Hajnoczi)
  - Add a io_flush() handler

-----

    Version 2:
    Changes from Blue Swirl's suggestions
    - Change naming of structures and typedefs to match coding style
    - Use CONFIG_ISCSI in the makefile to conditionally compile iscsi.c
    - Missing spaces added around operators
    - Use uint8_t instead of unsigned char for buffer pointer
    - Use a temporary variable for the result of long functions, to move them
      out from the if(...) expressions. Making the code easier to read.
    - Create a function sector_qemu2lun() and use it instead of performing
      the same conversion explicitely at several palces in the code.
    - Use the name opaque instead of private_data
    - Use memset() instead of bzero()
    - Use the common library function to parse the iSCSI URL
    - Add support for CHAP authentication

---------
 Makefile.objs |    1
 block/iscsi.c |  542 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure     |   31 +++
 trace-events  |    7
 4 files changed, 581 insertions(+)

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-02-27  4:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-25 23:44 [Qemu-devel] [PATCH 0/1] iSCSI support Ronnie Sahlberg
2010-12-25 23:44 ` [Qemu-devel] [PATCH] " Ronnie Sahlberg
2010-12-29  9:07   ` Stefan Hajnoczi
  -- strict thread matches above, loose matches on Subject: below --
2011-02-04  4:37 [Qemu-devel] iSCSI block driver support ronniesahlberg
2011-02-04  4:37 ` [Qemu-devel] [PATCH] iSCSI support ronniesahlberg
2011-02-19 15:34   ` Stefan Hajnoczi
2011-02-27  4:28     ` ronnie sahlberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).