X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Fpipe.c;h=66aa0b938d6aca876bf2d246462c5fa2e3586e8b;hb=7dac562f6d89b3f70c3f12b0e17878b07af42298;hp=2c7a23dde2d83f1ae18190e5723c0eb8d8ae0548;hpb=142e27fc8a3619471669d6241784eec9167c47d1;p=mv-sheeva.git diff --git a/fs/pipe.c b/fs/pipe.c index 2c7a23dde2d..66aa0b938d6 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -39,7 +39,11 @@ void pipe_wait(struct inode * inode) { DEFINE_WAIT(wait); - prepare_to_wait(PIPE_WAIT(*inode), &wait, TASK_INTERRUPTIBLE); + /* + * Pipes are system-local resources, so sleeping on them + * is considered a noninteractive wait: + */ + prepare_to_wait(PIPE_WAIT(*inode), &wait, TASK_INTERRUPTIBLE|TASK_NONINTERACTIVE); up(PIPE_SEM(*inode)); schedule(); finish_wait(PIPE_WAIT(*inode), &wait);