fs/pipe: remove buggy and unused 'helper' function
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 5 Mar 2025 17:35:40 +0000 (07:35 -1000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 5 Mar 2025 17:35:40 +0000 (07:35 -1000)
While looking for incorrect users of the pipe head/tail fields (see
commit c27c66afc449: "fs/pipe: Fix pipe_occupancy() with 16-bit
indexes"), I found a bug in pipe_discard_from() that looked entirely
broken.

However, the fix is trivial: this buggy function isn't actually called
by anything, so let's just remove it ASAP.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/pipe_fs_i.h

index 05ccbc5d01294c7c59dad12c9743c026de5363de..e572e6fc4f81ffa425076380e9814e7624f91294 100644 (file)
@@ -281,15 +281,6 @@ static inline bool pipe_buf_try_steal(struct pipe_inode_info *pipe,
        return buf->ops->try_steal(pipe, buf);
 }
 
-static inline void pipe_discard_from(struct pipe_inode_info *pipe,
-               unsigned int old_head)
-{
-       unsigned int mask = pipe->ring_size - 1;
-
-       while (pipe->head > old_head)
-               pipe_buf_release(pipe, &pipe->bufs[--pipe->head & mask]);
-}
-
 /* Differs from PIPE_BUF in that PIPE_SIZE is the length of the actual
    memory allocation, whereas PIPE_BUF makes atomicity guarantees.  */
 #define PIPE_SIZE              PAGE_SIZE