EDAC: Fix memleak in module init error path
[linux-2.6-microblaze.git] / drivers / edac / edac_mc_sysfs.c
index 7481955..20374b8 100644 (file)
@@ -1075,14 +1075,14 @@ int __init edac_mc_sysfs_init(void)
 
        err = device_add(mci_pdev);
        if (err < 0)
-               goto out_dev_free;
+               goto out_put_device;
 
        edac_dbg(0, "device %s created\n", dev_name(mci_pdev));
 
        return 0;
 
- out_dev_free:
-       kfree(mci_pdev);
+ out_put_device:
+       put_device(mci_pdev);
  out:
        return err;
 }