Re: 2.1.61: Problems with select() on serial port

Richard Gooch (rgooch@atnf.CSIRO.AU)
Mon, 10 Nov 1997 22:49:02 +1100


Ulrich Windl writes:
> Yesterday I tried kernel 2.1.61 too see the improved select of 2.1
> working.
>
> I used xntpd (3-5.91) to monitor my DCF77 reference clock receiver
> (The software uses selects with a short timeout around 1 second,
> and the process runs real-time priority SCHED_FIFO).
>
> The effect is that the software receives a few (around 5)
> characters from the serial port every second (as it should be) and
> then there's a pause of some seconds.
>
> I can't explain it. Is this a well-known bug in 2.1.61?

I haven't noticed any problems with select(2) or poll(2). Can you try
a simple test programme that does a blocking read instead of using
select(2) and see if that behaves correctly?

Can you check if kernels before 2.1.52 have the same problem? I did
some optimisation work for select(2) and poll(2) back then, but I
haven't heard of any problems with the patches that were subsequently
included into the mainstream kernel. A good kernel to try is 2.1.42
which I found to be quite robust (many of the 2.1.5x kernels had file
corruption problems).

If you find 2.1.42 and 2.1.51 work properly for select(2), then can
you please try each successive kernel until it breaks and tell me
which one breaks? That would help narrow down which patch broke
things.

Regards,

Richard....