From 3379358033f893e97601ad59e93dc0bfb7a34add Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Fri, 15 Jun 2007 13:16:13 +0200 Subject: [PATCH] --- yaml --- r: 57789 b: refs/heads/master c: 02676e5aee271c1f20d7d44249d26741aef1e846 h: refs/heads/master i: 57787: fe1d93ccbad0676c5c16415d786606418d0e8580 v: v3 --- [refs] | 2 +- trunk/fs/splice.c | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 670b86b04916..181e6128db80 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 00de00bdad278783b3664ad2969954a707f5944a +refs/heads/master: 02676e5aee271c1f20d7d44249d26741aef1e846 diff --git a/trunk/fs/splice.c b/trunk/fs/splice.c index 186fad463c43..e7d7080de2f9 100644 --- a/trunk/fs/splice.c +++ b/trunk/fs/splice.c @@ -245,14 +245,15 @@ static ssize_t splice_to_pipe(struct pipe_inode_info *pipe, pipe->waiting_writers--; } - if (pipe->inode) + if (pipe->inode) { mutex_unlock(&pipe->inode->i_mutex); - if (do_wakeup) { - smp_mb(); - if (waitqueue_active(&pipe->wait)) - wake_up_interruptible(&pipe->wait); - kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN); + if (do_wakeup) { + smp_mb(); + if (waitqueue_active(&pipe->wait)) + wake_up_interruptible(&pipe->wait); + kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN); + } } while (page_nr < spd_pages)