Re: [patch V2 02/13] USB: serial: keyspan_pda: Replace in_interrupt() usage

From: Johan Hovold
Date: Tue Oct 27 2020 - 04:16:56 EST


On Mon, Oct 26, 2020 at 01:47:53PM +0100, Sebastian Andrzej Siewior wrote:
> On 2020-10-25 17:56:47 [+0100], Johan Hovold wrote:
> > There's a ton of issues with this driver, but this is arguably making
> > things worse. A line discipline may call write() from just about any
> > context so we cannot rely on tty being non-NULL here (e.g. PPP).
>
> I wasn't aware of that. I've been looking at the callers each time a
> `tty' was passed it looked like a preemptible context (due to mutex /
> GFP_KERNEL) and so on.

Yeah, the default line discipline only calls in preemptible context
(these days), but others do not (e.g. see ppp_async_push()).

Johan