]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
i2c: i801: unregister tco_pdev in i801_probe() error path
authorHeiner Kallweit <hkallweit1@gmail.com>
Thu, 14 Sep 2023 21:08:44 +0000 (23:08 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 10 Oct 2023 19:43:40 +0000 (21:43 +0200)
commit 3914784553f68c931fc666dbe7e86fe881aada38 upstream.

We have to unregister tco_pdev also if i2c_add_adapter() fails.

Fixes: 9424693035a5 ("i2c: i801: Create iTCO device on newer Intel PCHs")
Cc: stable@vger.kernel.org
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/i2c/busses/i2c-i801.c

index c817e3d4b52b876ef746d9af26486fd352b1a6fc..f544118f121b997a77153993e07f624ae0a04a0e 100644 (file)
@@ -1670,6 +1670,7 @@ static int i801_probe(struct pci_dev *dev, const struct pci_device_id *id)
                "SMBus I801 adapter at %04lx", priv->smba);
        err = i2c_add_adapter(&priv->adapter);
        if (err) {
+               platform_device_unregister(priv->tco_pdev);
                i801_acpi_remove(priv);
                return err;
        }