HID: hyperv: fix possible memory leak in mousevsc_probe()
authorYang Yingliang <yangyingliang@huawei.com>
Fri, 28 Oct 2022 13:40:43 +0000 (21:40 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 Nov 2022 16:35:35 +0000 (17:35 +0100)
[ Upstream commit b5bcb94b0954a026bbd671741fdb00e7141f9c91 ]

If hid_add_device() returns error, it should call hid_destroy_device()
to free hid_dev which is allocated in hid_allocate_device().

Fixes: 74c4fb058083 ("HID: hv_mouse: Properly add the hid device")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Wei Liu <wei.liu@kernel.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/hid/hid-hyperv.c

index 6039f071fab1370da4a684e801883ef23e9706d4..15e20d5e76ddbbe68f9fb89de95f6bd1dc0fc021 100644 (file)
@@ -536,7 +536,7 @@ static int mousevsc_probe(struct hv_device *device,
 
        ret = hid_add_device(hid_dev);
        if (ret)
-               goto probe_err1;
+               goto probe_err2;
 
 
        ret = hid_parse(hid_dev);