Commit daf82bd2 authored by Michał Mirosław's avatar Michał Mirosław Committed by Felipe Balbi
Browse files

usb: gadget: u_serial: add missing port entry locking



gserial_alloc_line() misses locking (for a release barrier) while
resetting port entry on TTY allocation failure. Fix this.

Cc: stable@vger.kernel.org
Signed-off-by: default avatarMichał Mirosław <mirq-linux@rere.qmqm.pl>
Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tested-by: default avatarLadislav Michl <ladis@linux-mips.org>
Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
parent 9ba3aca8
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1239,8 +1239,10 @@ int gserial_alloc_line(unsigned char *line_num)
				__func__, port_num, PTR_ERR(tty_dev));

		ret = PTR_ERR(tty_dev);
		mutex_lock(&ports[port_num].lock);
		port = ports[port_num].port;
		ports[port_num].port = NULL;
		mutex_unlock(&ports[port_num].lock);
		gserial_free_port(port);
		goto err;
	}