]> Git Repo - linux.git/commit
splice: reinstate SIGPIPE/EPIPE handling
authorLinus Torvalds <[email protected]>
Wed, 21 Dec 2016 18:59:34 +0000 (10:59 -0800)
committerLinus Torvalds <[email protected]>
Wed, 21 Dec 2016 18:59:34 +0000 (10:59 -0800)
commit52bce91165e5f2db422b2b972e83d389e5e4725c
treee4ca6d2e8d2e64b54a50fa3bf5995c676e2f7d49
parent0c961c5511fe48834c73215d2203bdac3353dcae
splice: reinstate SIGPIPE/EPIPE handling

Commit 8924feff66f3 ("splice: lift pipe_lock out of splice_to_pipe()")
caused a regression when there were no more readers left on a pipe that
was being spliced into: rather than the expected SIGPIPE and -EPIPE
return value, the writer would end up waiting forever for space to free
up (which obviously was not going to happen with no readers around).

Fixes: 8924feff66f3 ("splice: lift pipe_lock out of splice_to_pipe()")
Reported-and-tested-by: Andreas Schwab <[email protected]>
Debugged-by: Al Viro <[email protected]>
Cc: [email protected] # v4.9
Signed-off-by: Linus Torvalds <[email protected]>
fs/splice.c
This page took 0.054478 seconds and 4 git commands to generate.