Thread (10 messages) 10 messages, 4 authors, 2019-12-05

Re: [GIT PULL] pipe: Notification queue preparation

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2019-12-05 17:25:18
Also in: keyrings, linux-api, linux-block, linux-fsdevel, linux-usb, lkml

On Thu, Dec 5, 2019 at 9:12 AM Linus Torvalds
[off-list ref] wrote:
It would be interesting to hear if somebody else is waiting on the
read side too.
Looking once more at that commit, I find at least one bug, but I'm
pretty sure that's not the cause of this problem.

DavidH, watch out for things like this:

-       for (idx = 0; idx < pipe->nrbufs && rem < len; idx++)
+       for (idx = tail; idx < head && rem < len; idx++)

which is a completely buggy conversion.

You can't compare tail and head with an inequality, it gets the
wraparound case wrong.

But I found only one of those, and it's fuse-specific, plus the
overflow would take a long time to trigger, so I'm pretty sure this
isn't what DavidS is reporting.

               Linus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help