Re: [PATCH 2/3] splice: allow non-block splice only when in file is seekable

From: Changli Gao
Date: Wed May 26 2010 - 07:54:22 EST


On Wed, May 26, 2010 at 6:29 PM, Miklos Szeredi <miklos@xxxxxxxxxx> wrote:
> On Wed, 26 May 2010, Changli Gao wrote:
>> allow non-block splice only when in file is seekable.
>>
>> do_splice_to() is split to two parts: read data from in file to spd, and move
>> data from spd to pipe. If there isn't much space in pipe for the data in spd,
>> and the splice is called with non-block flag, the data dropped due to non
>> enough space in pipe will be lost forever when in file isn't seekable.
>
> This is a gratuitous ABI change. ÂI don't think we should hold the
> hand of application writers,

Yea, it is an ABI change. But without that, we'll fail user silently
currently. Some fundamental change is needed to fix this issue fully,
if you think it is a bug.

> maybe they _know_ the splice will not
> block.
>

If they know the splice won't block, why he specifies a non-block flag?

--
Regardsï
Changli Gao(xiaosuo@xxxxxxxxx)
--
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/