On Mon, Sep 30, 2013 at 4:41 PM, Ric Wheeler <rwheeler@xxxxxxxxxx> wrote:The way the array based offload (and some software side reflink works) isYou're missing my point.
not a byte by byte copy. We cannot assume that a valid count can be returned
or that such a count would be an indication of a sequential segment of good
data. The whole thing would normally have to be reissued.
To make that a true assumption, you would have to mandate that in each of
the specifications (and sw targets)...
- user issues SIZE_MAX splice request
- fs issues *64M* (or whatever) request to offload
- when that completes *fully* then we return 64M to userspace
- if it completes partially, then we return an error to userspace
Again, wouldn't that work?
Thanks,
Miklos