Messages in this thread | | | Date | Mon, 18 Mar 2019 14:44:54 +0100 (CET) | From | Jiri Kosina <> | Subject | Re: [PATCH] HID: steam: fix deadlock with input devices. |
| |
On Fri, 15 Mar 2019, Rodrigo Rivas Costa wrote:
> When using this driver with the wireless dongle and some usermode > program that monitors every input device (acpid, for example), while > another usermode client opens and closes the low-level device > repeadedly, the system eventually deadlocks. > > The reason is that steam_input_register_device() must not be called with > the mutex held, because the input subsystem has its own synchronization > that clashes with this one: it is possible that steam_input_open() is > called before input_register_device() returns, and since > steam_input_open() needs to lock the mutex, it deadlocks. > > However we must hold the mutex when calling any function that sends > commands to the controller. If not, random commands end up falling fail. > > Reported-by: Simon Gene Gottlieb <simon@gottliebtfreitag.de> > Signed-off-by: Rodrigo Rivas Costa <rodrigorivascosta@gmail.com> > Tested-by: Simon Gene Gottlieb <simon@gottliebtfreitag.de>
Applied to for-5.1/upstream-fixes, thanks.
-- Jiri Kosina SUSE Labs
| |