aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudiu Beznea2023-05-31 10:39:50 +0300
committerGreg Kroah-Hartman2023-07-19 16:21:58 +0200
commitd986fb02a1eae6263a9b646ee538905b3dde5493 (patch)
treee0572ba6a3140725595dd4879960a90a437ee132
parent055ea8efdfbbbb1ccdf3862fe59765dc3a50460c (diff)
phy: tegra: xusb: check return value of devm_kzalloc()
[ Upstream commit 44faada0f38fc333d392af04c343b0e23f8f5d81 ] devm_kzalloc() returns a pointer to dynamically allocated memory. Pointer could be NULL in case allocation fails. Check pointer validity. Identified with coccinelle (kmerr.cocci script). Fixes: f67213cee2b3 ("phy: tegra: xusb: Add usb-role-switch support") Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> Acked-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20230531073950.145339-1-claudiu.beznea@microchip.com Signed-off-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/phy/tegra/xusb.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/phy/tegra/xusb.c b/drivers/phy/tegra/xusb.c
index c3fa22ee2d8d..4d5b4071d47d 100644
--- a/drivers/phy/tegra/xusb.c
+++ b/drivers/phy/tegra/xusb.c
@@ -670,6 +670,9 @@ 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,