From: Himangi Saraogi Date: Sun, 10 Aug 2014 19:59:37 +0000 (+0530) Subject: usb: phy: drop kfree of devm_kzalloc's data X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=0c5824083b8ca4aff083dc74024d0bfd46f9da9d;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git usb: phy: drop kfree of devm_kzalloc's data Using kfree to free data allocated with devm_kzalloc causes double frees. The Coccinelle semantic patch that fixes this problem is as follows: // @@ expression x; @@ x = devm_kzalloc(...) ... ?-kfree(x); // Reviewed-by: Jingoo Han Acked-by: Julia Lawall Signed-off-by: Himangi Saraogi Signed-off-by: Felipe Balbi --- diff --git a/drivers/usb/phy/phy-gpio-vbus-usb.c b/drivers/usb/phy/phy-gpio-vbus-usb.c index ea9e705555df..f4b14bd97e14 100644 --- a/drivers/usb/phy/phy-gpio-vbus-usb.c +++ b/drivers/usb/phy/phy-gpio-vbus-usb.c @@ -260,10 +260,8 @@ static int gpio_vbus_probe(struct platform_device *pdev) gpio_vbus->phy.otg = devm_kzalloc(&pdev->dev, sizeof(struct usb_otg), GFP_KERNEL); - if (!gpio_vbus->phy.otg) { - kfree(gpio_vbus); + if (!gpio_vbus->phy.otg) return -ENOMEM; - } platform_set_drvdata(pdev, gpio_vbus); gpio_vbus->dev = &pdev->dev;