diff mbox series

[v2] USB: serial: console: Move mutex_unlock() before usb_serial_put()

Message ID 20220919104824.4104898-1-windhl@126.com (mailing list archive)
State Accepted
Commit 61dfa797c731754642d1ac500a6ac42f9b47f920
Headers show
Series [v2] USB: serial: console: Move mutex_unlock() before usb_serial_put() | expand

Commit Message

Liang He Sept. 19, 2022, 10:48 a.m. UTC
While in current version there is no use-after-free as USB serial
core holds another reference when the console is registered, we
should better unlock before dropping the reference in
usb_console_setup().

Fixes: 7bd032dc2793 ("USB serial: update the console driver")
Signed-off-by: Liang He <windhl@126.com>
---
 drivers/usb/serial/console.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Johan Hovold Sept. 19, 2022, 1:29 p.m. UTC | #1
On Mon, Sep 19, 2022 at 06:48:24PM +0800, Liang He wrote:
> While in current version there is no use-after-free as USB serial
> core holds another reference when the console is registered, we
> should better unlock before dropping the reference in
> usb_console_setup().
> 
> Fixes: 7bd032dc2793 ("USB serial: update the console driver")
> Signed-off-by: Liang He <windhl@126.com>

Applied, thanks.

Johan
diff mbox series

Patch

diff --git a/drivers/usb/serial/console.c b/drivers/usb/serial/console.c
index b97aa40ca4d1..da19a5fa414f 100644
--- a/drivers/usb/serial/console.c
+++ b/drivers/usb/serial/console.c
@@ -189,8 +189,8 @@  static int usb_console_setup(struct console *co, char *options)
 	info->port = NULL;
 	usb_autopm_put_interface(serial->interface);
  error_get_interface:
-	usb_serial_put(serial);
 	mutex_unlock(&serial->disc_mutex);
+	usb_serial_put(serial);
 	return retval;
 }