> -----Original Message----- > From: gregkh@xxxxxxxxxxxxxxxxxxx <gregkh@xxxxxxxxxxxxxxxxxxx> > Sent: Friday, 24 May, 2019 10:57 > To: Rautkoski Kimmo EXT <ext-kimmo.rautkoski@xxxxxxxxxxx> > Cc: linux-serial@xxxxxxxxxxxxxxx > Subject: Re: [PATCH v3] serial: 8250: Fix TX interrupt handling condition > > On Fri, May 24, 2019 at 06:47:33AM +0000, Rautkoski Kimmo EXT wrote: > > Interrupt handler checked THRE bit (transmitter holding register > > empty) in LSR to detect if TX fifo is empty. > > In case when there is only receive interrupts the TX handling > > got called because THRE bit in LSR is set when there is no > > transmission (FIFO empty). TX handling caused TX stop, which in > > RS-485 half-duplex mode actually resets receiver FIFO. This is not > > desired during reception because of possible data loss. > > > > The fix is to check if THRI is set in IER in addition of the TX > > fifo status. THRI in IER is set when TX is started and cleared > > when TX is stopped. > > This ensures that TX handling is only called when there is really > > transmission on going and an interrupt for THRE and not when there > > are only RX interrupts. > > > > Signed-off-by: Kimmo Rautkoski <ext-kimmo.rautkoski@xxxxxxxxxxx> > > --- > > drivers/tty/serial/8250/8250_port.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > What changed from all of the previous versions of this patch? That > needs to go below the --- line. > > Please fix up and resend a v4. > > thanks, > > greg k-h Thanks for the reminder. I'll post v4 with changelog soon. BR, Kimmo