serial: 8250: Unlink uart console ptr if console setup fails
If console setup fails (eg., there is no valid port at that index), unlink the console ptr; otherwise, when the driver unloads, the console will be unregistered (even though setup, and thus registration, failed) and a console disabled message will be printed. Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
6a597a38cb
commit
d70a7b1626
|
@ -597,6 +597,7 @@ static void univ8250_console_write(struct console *co, const char *s,
|
||||||
static int univ8250_console_setup(struct console *co, char *options)
|
static int univ8250_console_setup(struct console *co, char *options)
|
||||||
{
|
{
|
||||||
struct uart_port *port;
|
struct uart_port *port;
|
||||||
|
int retval;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check whether an invalid uart number has been specified, and
|
* Check whether an invalid uart number has been specified, and
|
||||||
|
@ -609,7 +610,10 @@ static int univ8250_console_setup(struct console *co, char *options)
|
||||||
/* link port to console */
|
/* link port to console */
|
||||||
port->cons = co;
|
port->cons = co;
|
||||||
|
|
||||||
return serial8250_console_setup(port, options, false);
|
retval = serial8250_console_setup(port, options, false);
|
||||||
|
if (retval != 0)
|
||||||
|
port->cons = NULL;
|
||||||
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue