Jean Tourrilhes <jt@bougret.hpl.hp.com> writes:
> Hi,
>
> I've got the following problem : I can't make a pipe
> non-blocking with 2.5.25.
> The various man pages don't mention anything
> about it (actually, the "fifo" man page say that non-blocking mode
> should succeed). And it seems to work fine on 2.4.20.
> Sorry if this has already been reported and fixed, but I
> quicly searched the changelog and archive and found nothing.
>
> So, who should I complain to ?
>
[...]
> err = fcntl(trigger_pipe[0], F_GETFL, &flags);
F_GETFL should be,
flags = fcntl(trigger_pipe[0], F_GETFL, 0);
> fprintf(stderr, "GET FLAGS : %d - %X\n", err, flags);
> if(err >= 0)
> {
> flags |= O_NONBLOCK;
> err = fcntl(trigger_pipe[0], F_SETFL, flags);
> fprintf(stderr, "SET FLAGS : %d - %d\n", err, errno);
> }
> return(0);
> }
> ------------- Output 2.5.25 ----------------
> GET FLAGS : 0 - 40045F18
> SET FLAGS : -1 - 22
> ------------- Output 2.4.20-pre2 -----------
> GET FLAGS : 0 - 40043F18
> SET FLAGS : 0 - 0
> --------------------------------------------
Looks like effect of different implement of O_DIRECT(0x40000).
Thanks.
-- OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> - 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/
This archive was generated by hypermail 2b29 : Thu Aug 15 2002 - 22:00:38 EST