Re: [PATCH v2 2/2] hso: fix deadlock when receiving bursts of data

From: David Miller
Date: Mon Jul 14 2014 - 22:28:09 EST


From: Olivier Sobrie <olivier@xxxxxxxxx>
Date: Mon, 14 Jul 2014 12:08:50 +0200

> When the module sends bursts of data, sometimes a deadlock happens in
> the hso driver when the tty buffer doesn't get the chance to be flushed
> quickly enough.
>
> Remove the endless while loop in function put_rxbuf_data() which is
> called by the urb completion handler.
> If there isn't enough room in the tty buffer, discards all the data
> received in the URB.
>
> Cc: David Miller <davem@xxxxxxxxxxxxx>
> Cc: David Laight <David.Laight@xxxxxxxxxx>
> Cc: One Thousand Gnomes <gnomes@xxxxxxxxxxxxxxxxxxx>
> Cc: Dan Williams <dcbw@xxxxxxxxxx>
> Cc: Jan Dumon <j.dumon@xxxxxxxxxx>
> Signed-off-by: Olivier Sobrie <olivier@xxxxxxxxx>
> ---
> Changes in v2:
> - remove the unthrottle timer added in the previous patch version
> - drop entire rx urb data if there is not enough space in tty buffer
> - remove variable curr_rx_urb_offset from hso_serial structure

Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/