[PATCH] use correct wakeups in fs/pipe.c

Manfred Spraul (manfred@colorfullife.com)
Sat, 19 Oct 2002 20:12:42 +0200


This is a multi-part message in MIME format.
--------------080109000108040808000102
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

wake_up_interruptible() and _sync() calls are reversed in pipe_read().

The attached patches only calls _sync if a schedule() call follows.

--
	Manfred

--------------080109000108040808000102 Content-Type: text/plain; name="patch-pipefix" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="patch-pipefix"

--- 2.5/fs/pipe.c Sat Oct 19 11:40:14 2002 +++ build-2.5/fs/pipe.c Sat Oct 19 19:44:04 2002 @@ -109,7 +109,7 @@ break; } if (do_wakeup) { - wake_up_interruptible(PIPE_WAIT(*inode)); + wake_up_interruptible_sync(PIPE_WAIT(*inode)); kill_fasync(PIPE_FASYNC_WRITERS(*inode), SIGIO, POLL_OUT); } pipe_wait(inode); @@ -117,7 +117,7 @@ up(PIPE_SEM(*inode)); /* Signal writers asynchronously that there is more room. */ if (do_wakeup) { - wake_up_interruptible_sync(PIPE_WAIT(*inode)); + wake_up_interruptible(PIPE_WAIT(*inode)); kill_fasync(PIPE_FASYNC_WRITERS(*inode), SIGIO, POLL_OUT); } if (ret > 0)

--------------080109000108040808000102--

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/