On 17/12/2015 14:10, Alex Pyrgiotis wrote: >>>>> Which commands have large payloads and are on the data path, for >>>>> scsi-block? Or is the use case just scsi-generic (e.g. tape devices?)? > > If I understand correctly, what you're saying is that if "scsi-block" is > started with "cache=writeback" and internally uses ioctl()s to bypass > the page cache, why not set "cache=none" beforehand and use > readv()/writev()? > > This is a valid suggestion, but this patch does not target only the > "scsi-block" device type. Its purpose is to allow faster read/writes via > ioctl()s, either to a "scsi-block" device or to a "scsi-generic" device. > Note that the latter device type can only use ioctl()s, so it cannot > benefit from the readv()/writev() DMA interface and currently has to use > a bounce buffer.
Okay, so that answers my questions; there is still a valid use case for e.g. tape devices, and of course for when someone forgets to use scsi-block. Paolo >> We can improve the code to print a warning if you don't. (It needs some >> care: iscsi never caches, independent of the cache= argument, so we >> don't want to warn for it. But it can be done). > > I wasn't particularly concerned about that issue. I'd may prefer if this > was explicitly addressed in the QEMU doc, under the "cache=" section, > but that's a different discussion. > > Thanks, > Alex >