Re: [PATCH 1/2] pipe: Remove assertion from pipe_poll()

From: Linus Torvalds
Date: Thu Dec 05 2019 - 12:42:28 EST


On Thu, Dec 5, 2019 at 9:21 AM David Howells <dhowells@xxxxxxxxxx> wrote:
>
> An assertion check was added to pipe_poll() to make sure that the ring
> occupancy isn't seen to overflow the ring size. However, since no locks
> are held when the three values are read, it is possible for F_SETPIPE_SZ to
> intervene and muck up the calculation, thereby causing the oops.
>
> Fix this by simply removing the assertion and accepting that the
> calculation might be approximate.

This is not what the patch actually does.

The patch you sent only adds the wakeup when the pipe size changes.

Please re-generate both patches and re-send.

Linus