summary refs log tree commit diff
path: root/arch/m32r
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2016-02-16 14:15:59 +0100
committerTakashi Iwai <tiwai@suse.de>2016-02-16 14:37:19 +0100
commit13d5e5d4725c64ec06040d636832e78453f477b7 (patch)
tree60f260262d588d1d4ba08b1b2907fbde23dca5a7 /arch/m32r
parent0b8c82190c12e530eb6003720dac103bf63e146e (diff)
downloadlinux-13d5e5d4725c64ec06040d636832e78453f477b7.tar.gz
ALSA: seq: Fix double port list deletion
The commit [7f0973e973cd: ALSA: seq: Fix lockdep warnings due to
double mutex locks] split the management of two linked lists (source
and destination) into two individual calls for avoiding the AB/BA
deadlock.  However, this may leave the possible double deletion of one
of two lists when the counterpart is being deleted concurrently.
It ends up with a list corruption, as revealed by syzkaller fuzzer.

This patch fixes it by checking the list emptiness and skipping the
deletion and the following process.

BugLink: http://lkml.kernel.org/r/CACT4Y+bay9qsrz6dQu31EcGaH9XwfW7o3oBzSQUG9fMszoh=Sg@mail.gmail.com
Fixes: 7f0973e973cd ('ALSA: seq: Fix lockdep warnings due to 'double mutex locks)
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Tested-by: Dmitry Vyukov <dvyukov@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'arch/m32r')
0 files changed, 0 insertions, 0 deletions