linux/drivers/usb/common
Felix Gu f1b855c009 usb: ulpi: fix memory leak on ulpi_register() error paths
commit 0b9fcab1b8 upstream.

Commit 01af542392 ("usb: ulpi: fix double free in
ulpi_register_interface() error path") removed kfree(ulpi) from
ulpi_register_interface() to fix a double-free when device_register()
fails.

But when ulpi_of_register() or ulpi_read_id() fail before
device_register() is called, the ulpi allocation is leaked.

Add kfree(ulpi) on both error paths to properly clean up the allocation.

Fixes: 01af542392 ("usb: ulpi: fix double free in ulpi_register_interface() error path")
Cc: stable <stable@kernel.org>
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://patch.msgid.link/20260407-ulpi-v1-1-f3fafe53f7b2@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2026-06-01 17:35:20 +02:00
..
common.c usb: common: add helper to get role-switch-default-mode 2021-07-27 15:58:37 +02:00
common.h USB: move usb debugfs directory creation to the usb common core 2019-06-06 08:59:19 +02:00
debug.c usb: common: debug: Check non-standard control requests 2022-10-26 12:35:03 +02:00
Kconfig Partially revert "usb: Kconfig: using select for USB_COMMON dependency" 2021-10-05 13:45:16 +02:00
led.c USB: move usb debugfs directory creation to the usb common core 2019-06-06 08:59:19 +02:00
Makefile usb: common: add USB GPIO based connection detection driver 2019-09-03 19:01:04 +02:00
ulpi.c usb: ulpi: fix memory leak on ulpi_register() error paths 2026-06-01 17:35:20 +02:00
usb-conn-gpio.c usb: common: usb-conn-gpio: use a unique name for usb connector device 2025-07-10 15:57:33 +02:00
usb-otg-fsm.c usb: otg-fsm: Fix hrtimer list corruption 2021-07-27 16:31:31 +02:00