This is a note to let you know that I've just added the patch titled HID: hid-steam: Make sure rumble work is canceled on removal to the 6.12-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: hid-hid-steam-make-sure-rumble-work-is-canceled-on-r.patch and it can be found in the queue-6.12 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. commit 185b5f815034c6e426816260490fa8b26c340ad5 Author: Vicki Pfau <vi@xxxxxxxxxxx> Date: Wed Dec 25 18:34:24 2024 -0800 HID: hid-steam: Make sure rumble work is canceled on removal [ Upstream commit cc4f952427aaa44ecfd92542e10a65cce67bd6f4 ] 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 <vi@xxxxxxxxxxx> Signed-off-by: Jiri Kosina <jkosina@xxxxxxxx> Stable-dep-of: 79504249d7e2 ("HID: hid-steam: Move hidraw input (un)registering to work") Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> diff --git a/drivers/hid/hid-steam.c b/drivers/hid/hid-steam.c index 9b6aec0733ae6..daca250e51c8b 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;