]> git.itanic.dy.fi Git - linux-stable/commitdiff
mISDN: fix misuse of put_device() in mISDN_register_device()
authorWang ShaoBo <bobo.shaobowang@huawei.com>
Thu, 10 Nov 2022 11:38:23 +0000 (19:38 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 Nov 2022 16:40:24 +0000 (17:40 +0100)
[ Upstream commit 2d25107e111a85c56f601a5470f1780ec054e6ac ]

We should not release reference by put_device() before calling device_initialize().

Fixes: e7d1d4d9ac0d ("mISDN: fix possible memory leak in mISDN_register_device()")
Signed-off-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/isdn/mISDN/core.c

index 5cd53b2c47c755852d4ce13eb3164af1dd4fbb82..e542439f495061fff4eac2bdc776b19075b2c314 100644 (file)
@@ -231,7 +231,7 @@ mISDN_register_device(struct mISDNdevice *dev,
 
        err = get_free_devid();
        if (err < 0)
-               goto error1;
+               return err;
        dev->id = err;
 
        device_initialize(&dev->dev);