ALSA: control: Use deferred fasync helper
authorTakashi Iwai <tiwai@suse.de>
Thu, 28 Jul 2022 12:59:45 +0000 (14:59 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Aug 2022 09:40:44 +0000 (11:40 +0200)
commit3895d353f45a9389537ee8ffaffee306bff5992f
treea8eca47a66a13cc4fa3bf796f8b23d1e10556cfb
parent409e6a79928349d5aa702f655a572ac63c7f17ff
ALSA: control: Use deferred fasync helper

[ Upstream commit 4a971e84a7ae10a38d875cd2d4e487c8d1682ca3 ]

For avoiding the potential deadlock via kill_fasync() call, use the
new fasync helpers to defer the invocation from the control API.  Note
that it's merely a workaround.

Another note: although we haven't received reports about the deadlock
with the control API, the deadlock is still potentially possible, and
it's better to align the behavior with other core APIs (PCM and
timer); so let's move altogether.

Link: https://lore.kernel.org/r/20220728125945.29533-5-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/sound/control.h
sound/core/control.c