Comment 7 for bug 1501345

Revision history for this message
Rob G. (rob-gaddi) wrote : Re: linux-image-3.13.0-65-generic 3.13.0-65 breaks Python based Serial communication

I also found it first in PySerial, but it affects everything down to the underlying poll() implementation. Demo C code is attached (compile with -Wall -std=gnu99). Under -63 the poll() call blocks for the 1 second it's supposed to, a ping is sent once a second, and if you short pins 2-3 of the serial port the ping loops back and the code starts running I/O bound; pinging as fast as it can until you remove the screwdriver.

Under -65 poll() returns immediately even with nothing to read and the console I/O is the only thing restraining the process.

In short, this is a driver bug, not a Python specific thing, and most likely breaks any code that relies on select, poll, or epoll for serial I/O.