[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.11.1508172122250.3873@nanos>
Date: Mon, 17 Aug 2015 21:22:48 +0200 (CEST)
From: Thomas Gleixner <tglx@...utronix.de>
To: Taichi Kageyama <t-kageyama@...jp.nec.com>
cc: "gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"peter@...leysoftware.com" <peter@...leysoftware.com>,
"linux-serial@...r.kernel.org" <linux-serial@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"jslaby@...e.cz" <jslaby@...e.cz>,
"prarit@...hat.com" <prarit@...hat.com>,
Naoya Horiguchi <n-horiguchi@...jp.nec.com>,
"jiang.liu@...ux.intel.com" <jiang.liu@...ux.intel.com>
Subject: Re: [PATCH v4] serial: 8250: Fix autoconfig_irq() to avoid race
conditions
On Mon, 17 Aug 2015, Taichi Kageyama wrote:
> diff --git tty-next.org/drivers/tty/serial/8250/8250_port.c tty-next.work/drivers/tty/serial/8250/8250_port.c
> index 54e6c8d..9300b59 100644
> --- tty-next.org/drivers/tty/serial/8250/8250_port.c
> +++ tty-next.work/drivers/tty/serial/8250/8250_port.c
> @@ -1238,6 +1238,9 @@ static void autoconfig_irq(struct uart_8250_port *up)
> inb_p(ICP);
> }
>
> + if (uart_console(port))
> + console_lock();
> +
> /* forget possible initially masked and pending IRQ */
> probe_irq_off(probe_irq_on());
> save_mcr = serial_in(up, UART_MCR);
> @@ -1269,6 +1272,9 @@ static void autoconfig_irq(struct uart_8250_port *up)
> if (port->flags & UPF_FOURPORT)
> outb_p(save_ICP, ICP);
>
> + if (uart_console(port))
> + console_unlock();
> +
> port->irq = (irq > 0) ? irq : 0;
> }
Reviewed-by: Thomas Gleixner <tglx@...utronix.de>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists