Re: [Scst-devel] Re: Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] stgt a new version of iscsi target?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2005-12-09 at 18:29 +0300, Vladislav Bolkhovitin wrote:
> > Additionally, it's perfectly possible for all of this to be done zero
> > copy on the data.  A user space target mmaps the data on its storage
> > device and then does a SG_IO type scatter gather user virtual region
> > pass to the underlying target infrastructure.  We already have this
> > demonstrated in the SG_IO path, someone just needs to come up with the
> > correct implementation for a target path.
> 
> I'm not completely understand how it will work. Consider, there are 
> READ/WRITE commands with random data sizes arrive from an initiator. Are 
> you going to do map/unmap for each command individually or alloc data 
> buffers for commands from a premapped area and live with possible its 
> fragmentation? If map/unmap individually, then I should say that those 
> are very expensive operations.

You do it the same way an array does:  the model for SPI is read command
phase, disconnect, process command (i.e. set up areas) reconnect for
data transfer.

map/unmap are really only necessary if you're emulating the data store,
but it's a fairly cheap operation on linux: it just causes the creation
of a vm_area.  If it's a pass through, you can use SG_IO to pull it in
and the SG_IO like output to shoot it out again, effectively using a
piece of user memory as a zero copy buffer.

Fragmentation isn't an issue because the I/O goes via sg lists , all
that's needed is a bunch of pages.

James


-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux