diff options
| author | Johan Hovold <johan@kernel.org> | 2026-08-21 17:45:44 +0200 |
|---|---|---|
| committer | Johan Hovold <johan@kernel.org> | 2026-09-08 11:00:48 +0200 |
| commit | 63594e8ffe097bc0b7639936f33799a7653dded2 (patch) | |
| tree | 3b29b1a5481d981ea45dbf7ba764c8f366a5baee | |
| parent | 33c920f7c5952dfc42d1b8ea6efe16b1f0bb0c5b (diff) | |
| download | linux-next-63594e8ffe097bc0b7639936f33799a7653dded2.tar.gz linux-next-63594e8ffe097bc0b7639936f33799a7653dded2.zip | |
USB: serial: fix dynamic id driver deregistration race
Only free the dynamic ids after having deregistered the driver and
removed the "new_id" attribute to avoid leaking any id added by a racing
write to the attribute.
Fixes: 93bacefc4cc0 ("USB serial: add dynamic id support to usb-serial core")
Cc: stable@vger.kernel.org # 2.6.21
Signed-off-by: Johan Hovold <johan@kernel.org>
| -rw-r--r-- | drivers/usb/serial/bus.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/serial/bus.c b/drivers/usb/serial/bus.c index 9e2a18c0b218..295c61afa44c 100644 --- a/drivers/usb/serial/bus.c +++ b/drivers/usb/serial/bus.c @@ -165,7 +165,7 @@ int usb_serial_bus_register(struct usb_serial_driver *driver) void usb_serial_bus_deregister(struct usb_serial_driver *driver) { - free_dynids(driver); driver_unregister(&driver->driver); + free_dynids(driver); } |
