diff --git a/fs/splice.c b/fs/splice.c index dd9bf7e410d2..36e9353c1910 100644 --- a/fs/splice.c +++ b/fs/splice.c @@ -242,10 +242,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe, } if (do_wakeup) { - smp_mb(); - if (waitqueue_active(&pipe->wait)) - wake_up_interruptible_sync(&pipe->wait); - kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN); + wakeup_pipe_readers(pipe); do_wakeup = 0; }