Re: [Fwd: Weird ia64 problem]
> I'm thinking it should check if (PIPE_SIZE - buf->len) > PIPE_BUF, and
> set do_wakeup. The code could be #defined out if PIPE_SIZE == PIPE_BUF,
> so the change reduces to a no-op on other archs.
> Does that sound right? I'm going to work on a patch here.
Roughly (without looking back as fs/pipe.c). When you have your
patch, you will need to restart this discussion on the linux-kernel
mailing list (since you'll be touching a generic file). Some random
grepping for PAGE_SIZE (well PAGE_SHIFT) shows that some
other artchitectures have some support for page size > PIPE_BUF.
So there should be some interest in this fix.