]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ALSA: hda/intel: Make sure to cancel irq-pending work at closing PCM stream
authorTakashi Iwai <tiwai@suse.de>
Tue, 19 May 2026 12:11:53 +0000 (14:11 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 20 May 2026 05:50:45 +0000 (07:50 +0200)
commit33d3b6f0d86b539680bbda3300b2581cd62a3f18
tree882e271842aa658d5eaab6522c3b989c05e8e472
parente36a88b33cbe3dcbb90ac2245ba6149dd5793370
ALSA: hda/intel: Make sure to cancel irq-pending work at closing PCM stream

The pending irq work might be still floating while the assigned stream
has been already closed, which may lead to UAF, especially when
another async work for fasync is involved.

For addressing this, extend the hda_controller_ops for allowing the
extra cleanup procedure that is specific to the controller driver, and
make sure to cancel and sync the pending irq work at each PCM close
before releasing the resources.

Reported-by: Jake Lamberson <lamberson.jake@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20260519121157.28477-2-tiwai@suse.de
sound/hda/common/controller.c
sound/hda/common/hda_controller.h
sound/hda/controllers/intel.c