From: Vicki Pfau Date: Thu, 26 Dec 2024 02:34:24 +0000 (-0800) Subject: HID: hid-steam: Make sure rumble work is canceled on removal X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=cc4f952427aaa44ecfd92542e10a65cce67bd6f4;p=users%2Fjedix%2Flinux-maple.git HID: hid-steam: Make sure rumble work is canceled on removal When a force feedback command is sent from userspace, work is scheduled to pass this data to the controller without blocking userspace itself. However, in theory, this work might not be properly canceled if the controller is removed at the exact right time. This patch ensures the work is properly canceled when the device is removed. Signed-off-by: Vicki Pfau Signed-off-by: Jiri Kosina --- diff --git a/drivers/hid/hid-steam.c b/drivers/hid/hid-steam.c index 6439913372a8a..af38fc8eb34fd 100644 --- a/drivers/hid/hid-steam.c +++ b/drivers/hid/hid-steam.c @@ -1306,6 +1306,7 @@ static void steam_remove(struct hid_device *hdev) cancel_delayed_work_sync(&steam->mode_switch); cancel_work_sync(&steam->work_connect); + cancel_work_sync(&steam->rumble_work); hid_destroy_device(steam->client_hdev); steam->client_hdev = NULL; steam->client_opened = 0;