Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 25600
b: refs/heads/master
c: c0bd1f6
h: refs/heads/master
v: v3
  • Loading branch information
Jens Axboe committed Apr 10, 2006
1 parent e77db04 commit 1d0b667
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9aefe431f5a000884db7ae74ac208de814fe5913
refs/heads/master: c0bd1f650bd06a43435808d44f1e9520ea806206
16 changes: 12 additions & 4 deletions trunk/fs/splice.c
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,9 @@ static ssize_t move_to_pipe(struct inode *inode, struct page **pages,
}

if (do_wakeup) {
wake_up_interruptible_sync(PIPE_WAIT(*inode));
smp_mb();
if (waitqueue_active(PIPE_WAIT(*inode)))
wake_up_interruptible_sync(PIPE_WAIT(*inode));
kill_fasync(PIPE_FASYNC_READERS(*inode), SIGIO,
POLL_IN);
do_wakeup = 0;
Expand All @@ -201,7 +203,9 @@ static ssize_t move_to_pipe(struct inode *inode, struct page **pages,
mutex_unlock(PIPE_MUTEX(*inode));

if (do_wakeup) {
wake_up_interruptible(PIPE_WAIT(*inode));
smp_mb();
if (waitqueue_active(PIPE_WAIT(*inode)))
wake_up_interruptible(PIPE_WAIT(*inode));
kill_fasync(PIPE_FASYNC_READERS(*inode), SIGIO, POLL_IN);
}

Expand Down Expand Up @@ -600,7 +604,9 @@ static ssize_t move_from_pipe(struct inode *inode, struct file *out,
}

if (do_wakeup) {
wake_up_interruptible_sync(PIPE_WAIT(*inode));
smp_mb();
if (waitqueue_active(PIPE_WAIT(*inode)))
wake_up_interruptible_sync(PIPE_WAIT(*inode));
kill_fasync(PIPE_FASYNC_WRITERS(*inode),SIGIO,POLL_OUT);
do_wakeup = 0;
}
Expand All @@ -611,7 +617,9 @@ static ssize_t move_from_pipe(struct inode *inode, struct file *out,
mutex_unlock(PIPE_MUTEX(*inode));

if (do_wakeup) {
wake_up_interruptible(PIPE_WAIT(*inode));
smp_mb();
if (waitqueue_active(PIPE_WAIT(*inode)))
wake_up_interruptible(PIPE_WAIT(*inode));
kill_fasync(PIPE_FASYNC_WRITERS(*inode), SIGIO, POLL_OUT);
}

Expand Down

0 comments on commit 1d0b667

Please sign in to comment.