Commit b7a8f766 authored by Wei Yongjun's avatar Wei Yongjun Committed by Greg Kroah-Hartman
Browse files

serial: 8250: 8250_core: Fix missing unlock on error in serial8250_register_8250_port()



Add the missing unlock before return from function serial8250_register_8250_port()
in the error handling case.

Signed-off-by: default avatarWei Yongjun <weiyongjun1@huawei.com>
Link: https://lore.kernel.org/r/20190703055908.141294-1-weiyongjun1@huawei.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 84872dc4
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1026,8 +1026,10 @@ int serial8250_register_8250_port(struct uart_8250_port *up)
		if (!has_acpi_companion(uart->port.dev)) {
			gpios = mctrl_gpio_init(&uart->port, 0);
			if (IS_ERR(gpios)) {
				if (PTR_ERR(gpios) != -ENOSYS)
					return PTR_ERR(gpios);
				if (PTR_ERR(gpios) != -ENOSYS) {
					ret = PTR_ERR(gpios);
					goto out_unlock;
				}
			} else {
				uart->gpios = gpios;
			}
@@ -1099,6 +1101,7 @@ int serial8250_register_8250_port(struct uart_8250_port *up)
		}
	}

out_unlock:
	mutex_unlock(&serial_mutex);

	return ret;