Re: changes between 2.2.20 and 2.4.x 'broke' select() from detecting input characters in my serial /dev/ttyS0 program

From: David Dyck (
Date: Wed May 01 2002 - 11:45:01 EST

On Wed, 1 May 2002 at 11:03 -0400, Stuart MacDonald <

> CREAD handling was changed to be correct; recently, but I don't know
> exactly when. The 2.4 vs 2.2 difference sounds about right though.
> Previously CREAD had been incorrectly handled by the driver and hadn't
> been changed because some apps would break. Now data is correctly
> ignored on receive when CREAD is off.
> When you talk about the "O_WRONLY channel" and the "O_RDONLY channel"
> you're not actually referring to separate things. Each serial port is
> represented in the kernel as one entity that may be opened different
> ways, possibly multiple times.
> When you turn off CREAD in your write side, you turn off CREAD for the
> whole port, including the read only side. This is not a bug in the
> driver.

Thanks for your response. (thanks also the the other
folks that responded). It makes sense to me that 2 open calls
to the same "/dev/ttyS0" should map to the same driver and kernel
structure, so there is only one place that CREAD effects.

To bad that the 2.2 code was in error, but I can work around with that.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Tue May 07 2002 - 22:00:11 EST