tpm: Properly clean sysfs entries in error path
authorStefan Berger <stefanb@linux.vnet.ibm.com>
Thu, 19 Jun 2014 19:00:19 +0000 (15:00 -0400)
committerPeter Huewe <peterhuewe@gmx.de>
Tue, 29 Jul 2014 21:10:55 +0000 (23:10 +0200)
Properly clean the sysfs entries in the error path

Cc: <stable@vger.kernel.org>
Reported-by: Dmitry Kasatkin <dmitry.kasatkin@gmail.com>
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
drivers/char/tpm/tpm-interface.c

index 62e10fd1e1cbe2543043d42b1e3e7650160c89ba..d175fb8e719aa2c6e9d007013410a7c5cdbfde31 100644 (file)
@@ -1095,7 +1095,7 @@ struct tpm_chip *tpm_register_hardware(struct device *dev,
                goto del_misc;
 
        if (tpm_add_ppi(&dev->kobj))
-               goto del_misc;
+               goto del_sysfs;
 
        chip->bios_dir = tpm_bios_log_setup(chip->devname);
 
@@ -1106,6 +1106,8 @@ struct tpm_chip *tpm_register_hardware(struct device *dev,
 
        return chip;
 
+del_sysfs:
+       tpm_sysfs_del_device(chip);
 del_misc:
        tpm_dev_del_device(chip);
 put_device: