]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: seq: Fix race at creating a queue
authorTakashi Iwai <tiwai@suse.de>
Wed, 8 Feb 2017 11:35:39 +0000 (12:35 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 8 Feb 2017 11:42:37 +0000 (12:42 +0100)
commit8e955437cc62204a0c921292e4d29f34fc23ae01
tree08e56d4db3d9f4d720fbaf3091d31ff219c5b58e
parentaf9085601e8c9939b3c1bf913e61e06e38e3a7a4
ALSA: seq: Fix race at creating a queue

When a sequencer queue is created in snd_seq_queue_alloc(),it adds the
new queue element to the public list before referencing it.  Thus the
queue might be deleted before the call of snd_seq_queue_use(), and it
results in the use-after-free error, as spotted by syzkaller.

The fix is to reference the queue object at the right time.

Reported-by: Dmitry Vyukov <dvyukov@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/core/seq/seq_queue.c