USB: serial: drop obsolete open-race workaround
Commita65a6f14dc
("USB: serial: fix race between probe and open") fixed a race between probe and open, which could lead to crashes when a not yet fully initialised port was being opened. This race was later incidentally closed by commit7e73eca6a7
("TTY: move cdev_add to tty_register_device") which moved character-device registration from tty_register_driver to tty_register_device, which isn't called until the port has been fully set up. Remove the now redundant workaround which had the negative side effect of not allowing a port to be opened immediately after user space had been notified of a new tty device. Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Johan Hovold <johan@kernel.org>
This commit is contained in:
Родитель
bc242fc107
Коммит
e1fdd5b262
|
@ -996,12 +996,6 @@ static int usb_serial_probe(struct usb_interface *interface,
|
|||
serial->attached = 1;
|
||||
}
|
||||
|
||||
/* Avoid race with tty_open and serial_install by setting the
|
||||
* disconnected flag and not clearing it until all ports have been
|
||||
* registered.
|
||||
*/
|
||||
serial->disconnected = 1;
|
||||
|
||||
if (allocate_minors(serial, num_ports)) {
|
||||
dev_err(ddev, "No more free serial minor numbers\n");
|
||||
goto probe_error;
|
||||
|
@ -1019,8 +1013,6 @@ static int usb_serial_probe(struct usb_interface *interface,
|
|||
dev_err(ddev, "Error registering port device, continuing\n");
|
||||
}
|
||||
|
||||
serial->disconnected = 0;
|
||||
|
||||
if (num_ports > 0)
|
||||
usb_serial_console_init(serial->port[0]->minor);
|
||||
exit:
|
||||
|
|
Загрузка…
Ссылка в новой задаче