So, James, what is your opinion on the above? Or the overall SCSI target project simplicity doesn't matter much for you and you think it's fine to duplicate Linux page cache in the user space to keep the in-kernel part of the project as small as possible?
The answers were pretty much contained here
http://marc.info/?l=linux-scsi&m=120164008302435
and here:
http://marc.info/?l=linux-scsi&m=120171067107293
Weren't they?
No, sorry, it doesn't look so for me. They are about performance, but I'm asking about the overall project's architecture, namely about one part of it: simplicity. Particularly, what do you think about duplicating Linux page cache in the user space to have zero-copy cached I/O? Or can you suggest another architectural solution for that problem in the STGT's approach?
Isn't that an advantage of a user space solution? It simply uses the
backing store of whatever device supplies the data. That means it takes
advantage of the existing mechanisms for caching.