Re: [RFC] With 8250 Designware UART, if writes to the LCR failed the kernel will hung up

From: Peter Hurley
Date: Tue Mar 10 2015 - 09:25:17 EST


On 03/09/2015 10:47 PM, Tim Kryger wrote:
> The current workaround of clearing fifos and retrying a fixed number
> of times isn't ideal but I'm not sure what else can be done given the
> way this hardware works.

But hanging the machine is not an acceptable outcome.

Since the hang stems from the printk while already holding the port->lock,
until I can fix the console write, I think it's best to comment out
the dev_err() with a FIXME note.

The 8250 console write already checks port->sysrq to allow printk from
within the driver so this solution just needs to be generalized.
And there are debug uses of printk() from within the driver that are just
as broken, so this isn't the only use case. (I want to do something
similar for the au_serial-* i/o accessors too).

Regards,
Peter Hurley


--
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/