1
0
Fork 0

NFC: nfcwilink: Use devm_kzalloc

devm_kzalloc allocates memory that is released when a driver detaches.
This patch uses devm_kzalloc for data that is allocated in the probe
function of a platform device and is only freed in the remove function.

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
wifi-calibration
Julia Lawall 2012-12-06 23:10:40 +01:00 committed by Samuel Ortiz
parent 9e2d493e74
commit 5f4d6214ef
1 changed files with 2 additions and 7 deletions

View File

@ -526,7 +526,7 @@ static int nfcwilink_probe(struct platform_device *pdev)
nfc_dev_dbg(&pdev->dev, "probe entry"); nfc_dev_dbg(&pdev->dev, "probe entry");
drv = kzalloc(sizeof(struct nfcwilink), GFP_KERNEL); drv = devm_kzalloc(&pdev->dev, sizeof(struct nfcwilink), GFP_KERNEL);
if (!drv) { if (!drv) {
rc = -ENOMEM; rc = -ENOMEM;
goto exit; goto exit;
@ -547,7 +547,7 @@ static int nfcwilink_probe(struct platform_device *pdev)
if (!drv->ndev) { if (!drv->ndev) {
nfc_dev_err(&pdev->dev, "nci_allocate_device failed"); nfc_dev_err(&pdev->dev, "nci_allocate_device failed");
rc = -ENOMEM; rc = -ENOMEM;
goto free_exit; goto exit;
} }
nci_set_parent_dev(drv->ndev, &pdev->dev); nci_set_parent_dev(drv->ndev, &pdev->dev);
@ -566,9 +566,6 @@ static int nfcwilink_probe(struct platform_device *pdev)
free_dev_exit: free_dev_exit:
nci_free_device(drv->ndev); nci_free_device(drv->ndev);
free_exit:
kfree(drv);
exit: exit:
return rc; return rc;
} }
@ -588,8 +585,6 @@ static int nfcwilink_remove(struct platform_device *pdev)
nci_unregister_device(ndev); nci_unregister_device(ndev);
nci_free_device(ndev); nci_free_device(ndev);
kfree(drv);
dev_set_drvdata(&pdev->dev, NULL); dev_set_drvdata(&pdev->dev, NULL);
return 0; return 0;