]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
HID: hid-steam: Move hidraw input (un)registering to work
authorVicki Pfau <vi@endrift.com>
Wed, 5 Feb 2025 03:55:27 +0000 (19:55 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Feb 2025 13:01:42 +0000 (14:01 +0100)
commit3e38cbbfa0a128a9d64773240a9eb3bc7bae3b1a
treed5391f1f92cbe0d215acda3ed4b9b33fd04dc2b0
parent2152b417be1652fe5ce590fd08ae9be8f0acd220
HID: hid-steam: Move hidraw input (un)registering to work

[ Upstream commit 79504249d7e27cad4a3eeb9afc6386e418728ce0 ]

Due to an interplay between locking in the input and hid transport subsystems,
attempting to register or deregister the relevant input devices during the
hidraw open/close events can lead to a lock ordering issue. Though this
shouldn't cause a deadlock, this commit moves the input device manipulation to
deferred work to sidestep the issue.

Fixes: 385a4886778f6 ("HID: steam: remove input device when a hid client is running.")
Signed-off-by: Vicki Pfau <vi@endrift.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/hid/hid-steam.c