drivers/phy/tegra/xusb.c | 2 ++ 1 file changed, 2 insertions(+)
From: William Dean <williamsukatube@gmail.com>
The function devm_kzalloc() in tegra_xusb_setup_usb_role_switch()
can fail, so its return value should be checked.
Fixes: f67213cee2b35 ("phy: tegra: xusb: Add usb-role-switch support")
Reported-by: Hacash Robot <hacashRobot@santino.com>
Signed-off-by: William Dean <williamsukatube@gmail.com>
---
drivers/phy/tegra/xusb.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/phy/tegra/xusb.c b/drivers/phy/tegra/xusb.c
index aa5237eacd29..e3611fb4c779 100644
--- a/drivers/phy/tegra/xusb.c
+++ b/drivers/phy/tegra/xusb.c
@@ -668,6 +668,8 @@ static int tegra_xusb_setup_usb_role_switch(struct tegra_xusb_port *port)
port->dev.driver = devm_kzalloc(&port->dev,
sizeof(struct device_driver),
GFP_KERNEL);
+ if (!port->dev.driver)
+ return -ENOMEM;
port->dev.driver->owner = THIS_MODULE;
port->usb_role_sw = usb_role_switch_register(&port->dev,
--
2.25.1
On 23-07-22, 11:41, williamsukatube@163.com wrote:
> From: William Dean <williamsukatube@gmail.com>
>
> The function devm_kzalloc() in tegra_xusb_setup_usb_role_switch()
> can fail, so its return value should be checked.
>
> Fixes: f67213cee2b35 ("phy: tegra: xusb: Add usb-role-switch support")
> Reported-by: Hacash Robot <hacashRobot@santino.com>
Where is this bug report?
> Signed-off-by: William Dean <williamsukatube@gmail.com>
> ---
> drivers/phy/tegra/xusb.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/phy/tegra/xusb.c b/drivers/phy/tegra/xusb.c
> index aa5237eacd29..e3611fb4c779 100644
> --- a/drivers/phy/tegra/xusb.c
> +++ b/drivers/phy/tegra/xusb.c
> @@ -668,6 +668,8 @@ static int tegra_xusb_setup_usb_role_switch(struct tegra_xusb_port *port)
> port->dev.driver = devm_kzalloc(&port->dev,
> sizeof(struct device_driver),
> GFP_KERNEL);
> + if (!port->dev.driver)
> + return -ENOMEM;
> port->dev.driver->owner = THIS_MODULE;
>
> port->usb_role_sw = usb_role_switch_register(&port->dev,
> --
> 2.25.1
--
~Vinod
© 2016 - 2026 Red Hat, Inc.