uio: sercos3: use devm_kzalloc
PATCH 1/1 uio: sercos3: use devm_kzalloc
use devm_kzalloc and no need of free's at error path and unload
Signed-off-by Devendra Naga <[email protected]>
---
Please apply this after
changeid: 1fb4ec94e7e955a1e26bf81f2634e5be2fa5f1d5 [PATCH] uio: uio_sercos3: use module_pci_driver macro
sorry for sending as patch should be patch 2/2.
drivers/uio/uio_sercos3.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)
drivers/uio/uio_sercos3.c +5 -10
@@ -123,16 +123,16 @@ static int sercos3_pci_probe(struct pci_dev *dev,struct sercos3_priv *priv;int i; - info =kzalloc (sizeof (struct uio_info ),GFP_KERNEL ); + info =devm_kzalloc (&dev->dev,sizeof (struct uio_info ),GFP_KERNEL );if (!info)return -ENOMEM ; - priv =kzalloc (sizeof (struct sercos3_priv ),GFP_KERNEL ); + priv =devm_kzalloc (&dev->dev,sizeof (struct sercos3_priv ),GFP_KERNEL );if (!priv) - goto out_free; +return -ENOMEM ;if (pci_enable_device (dev)) - goto out_free_priv; + goto out;if (pci_request_regions (dev,"sercos3" )) goto out_disable;
@@ -173,10 +173,7 @@ out_unmap:pci_release_regions (dev); out_disable:pci_disable_device (dev); -out_free_priv: -kfree (priv); -out_free: -kfree (info); +out:return -ENODEV ; }
@@ -193,8 +190,6 @@ static void sercos3_pci_remove(struct pci_dev *dev)if (info->mem[i].internal_addr)iounmap (info->mem[i].internal_addr); } -kfree (info->priv); -kfree (info); }static struct pci_device_id sercos3_pci_ids[] = {
Signature · 1 line
1.7.10.4