Re: Change in splice() behaviour after 5.10?

From: Kees Cook
Date: Tue Jun 04 2024 - 01:44:06 EST




On June 3, 2024 9:50:30 PM PDT, Christoph Hellwig <hch@xxxxxx> wrote:
>On Mon, Jun 03, 2024 at 10:59:15AM +0100, Terry Tritton wrote:
>> Hi,
>> We've found a change in behaviour while testing the splice07 LTP test.
>> In versions before 5.10 the test will hang on certain combinations but after
>> 5.10 the splice call will return.
>> I bisected the change to the following commit:
>> 36e2c7421f02a22f71c9283e55fdb672a9eb58e7
>> fs: don't allow splice read/write without explicit ops
>>
>> There has been some discussion on the LTP github page already:
>> https://github.com/linux-test-project/ltp/issues/1156
>
>In that case the return probably is an error because epoll doesn't
>support read_iter/write_iter and thus completely expected.
>
>If the underlying bug hasn't been fix in the mean time that probably
>means it will be back if Jens' conversion of all misc file operations
>to the iter based ones every gets merged.
>
>If you are interested more in this please discuss it on the relevant
>mailing lists instead of in private mail.

Eh? LKML is in CC...

I've added fsdevel and Jens now too, though.

-Kees

--
Kees Cook