[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wjjNErGaMCepX-2q_3kuZV_aNoqB5SE-LLR_eLk2+OHJA@mail.gmail.com>
Date: Fri, 23 Jun 2023 16:08:37 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: David Howells <dhowells@...hat.com>
Cc: Franck Grosjean <fgrosjea@...hat.com>,
Phil Auld <pauld@...hat.com>,
Alexander Viro <viro@...iv.linux.org.uk>,
Christian Brauner <brauner@...nel.org>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] pipe: Make a partially-satisfied blocking read wait for more
On Fri, 23 Jun 2023 at 15:41, Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
>
> This patch seems actively wrong, in that now it's possibly waiting for
> data that won't come, even if it's nonblocking.
In fact, I'd expect that patch to fail immediately on a perfectly
normal program that passes a token around by doing a small write to a
pipe, and have the "token reader" do a bigger write.
Blocking on read(), waiting for more data, would be blocking forever.
The read already got the token, there isn't going to be anything else.
So I'm pretty sure that patch is completely wrong, and whatever
program is "fixed" by it is very very buggy.
Again - we do have the rule that regressions are regressions even for
buggy user space, but when it's been 3+ years and you don't even
mention the broken app, I am not impressed.
Linus
Powered by blists - more mailing lists