Re: [RFC] extending splice for copy offloading

From: Ric Wheeler
Date: Mon Sep 30 2013 - 11:49:40 EST


On 09/30/2013 10:46 AM, Miklos Szeredi wrote:
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) is
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)...
You're missing my point.

- 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

Yes, if you send a copy offload command and it works, you can assume that it worked fully. It would be pretty interesting if that were not true :)

If it fails, we cannot assume anything about partial completion.

Ric

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/