[stgt] iscsi initiastor library for kvm/qemu
ronnie sahlberg
ronniesahlberg at gmail.com
Wed Nov 24 09:52:26 CET 2010
On Tue, Nov 23, 2010 at 9:16 AM, Mike Christie <michaelc at cs.wisc.edu> wrote:
> On 11/22/2010 02:11 PM, Mike Christie wrote:
>> The initiator is all in userspace, right? Is there any plans on
>> supporting offload? Would you create some offloaded connection using a
>> driver like bnx2i/cxgb3i/be2iscsi/qla4xxx then pass/get pdus through it?
Yes, it is all in userspace.
My goal is to have a library/client, posix compliant so that it runs
on all platforms, and all in userspace.
>
> Oh yeah, there is also a libiscsi for userspace apps here:
> http://git.kernel.org/?p=linux/kernel/git/mnc/open-iscsi.git;a=tree;f=libiscsi;h=da40a4845058b1c23d803dc91a1fbc7c225c7025;hb=qla4xxx
> This uses the open-iscsi kernel code, so it is probably not going to help
> you. An updated versions is currently shipped in red hat distro's (can send
> the patch if you want) and used by the installer, anaconda, to discover and
> log into targets and find disks.
>
> Do you think there will be overlap? Just wondering because for open-iscsi we
> are trying to modify that lib to support more operations, so it is useful to
> other apps but if your lib ends up supporting everything we need we would
> just use it instead.
Yes, there will be overlap :-)
At this stage, anything based on open-iscsi has a very much more
mature implementation of the iscsi layer.
Eventually I want the library to support all useful SCSI functions in
SBC, MMC, SSC, and maybe SMC.
I want it to be able to do marshalling and unmarshalling of most
useful structures passed in DATA-IN/DATA-OUT.
I also want the iscsi layer to be reasonably complete.
I got a lot of responses to this, so there does seem to be interest
for a client library for general purpose use.
Now, I initially only wanted something for myself, to get KVM to use
iscsi directly. (I find it VERY annoying that open-iscsi make the
devices visible to the host), and also to hook into DBENCH, which
has a functioning but otherwise very poor synchronous initiator built
in.
When your tool does "login and discover LUNs" what operations does
that involve and would you need ?
Is this something similar to this ?
$ ./iscsi-ls --portal=127.0.0.1 --show-luns
Target:iqn.ronnie.test Portal:127.0.0.1:3260,1
Lun:0 Type:STORAGE_ARRAY_CONTROLLER
Lun:1 Type:DIRECT_ACCESS Size:5G
Lun:2 Type:MMC
Now, I just need to think of where to take this "for KVM and for
DBENCH" library onto a public git tree so others can use and
contribute to it.
regards
ronnie sahlberg
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the stgt
mailing list