HID: thrustmaster: Fix memory leak in thrustmaster_interrupts()
authorEvgeny Novikov <novikov@ispras.ru>
Fri, 30 Jul 2021 16:53:33 +0000 (19:53 +0300)
committerJiri Kosina <jkosina@suse.cz>
Fri, 20 Aug 2021 12:24:57 +0000 (14:24 +0200)
thrustmaster_interrupts() does not free memory for send_buf when
usb_interrupt_msg() fails. This is fixed by the given patch.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Evgeny Novikov <novikov@ispras.ru>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-thrustmaster.c

index 9cb4248f95afd1176f51e573176f27ca1552c8da..d44550aa880573c037857be00ae94582e7fac644 100644 (file)
@@ -173,6 +173,7 @@ static void thrustmaster_interrupts(struct hid_device *hdev)
 
                if (ret) {
                        hid_err(hdev, "setup data couldn't be sent\n");
+                       kfree(send_buf);
                        return;
                }
        }