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:36:44 +0000 (17:36 +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 220b3e5c9c39dd9831c567c98f0df7e7b776e4aa..d8ebaa5d8b58c75a68669e39dc61b7a63fd211e7 100644 (file)
@@ -500,7 +500,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);