Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> writes: > On Thu, May 30, 2019 at 06:29:46PM +0300, Sergey Organov wrote: >> imx_set_termios(): remove busy-waiting "drain Tx FIFO" loop. Worse >> yet, it was potentially unbounded wait due to RTS/CTS (hardware) >> handshake. >> >> Let user space ensure draining is done before termios change, if >> draining is needed in the first place. > > I don't know for sure what the intended behaviour is here, but I tend to > think that changing the unbounded wait to a timeout and then return > -EBUSY (?) would be more suitable. No, please! Bytes in Tx FIFO are not an excuse to exit with error instead of setting new termios as asked to. > With your change you're possibly breaking existent software. Well, I suspect the software is already broken then, as most widely used drivers out there seem to do no Tx FIFO draining on set_termios() call, or do they? I mean I tried to find similar code in some of the other drivers, to replicate it, but I failed to find one. -- Sergey