ALSA: pcm: Check PCM state at xfern compat ioctl
authorTakashi Iwai <tiwai@suse.de>
Wed, 2 May 2018 06:48:46 +0000 (08:48 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 May 2018 07:51:49 +0000 (09:51 +0200)
commite5e9a770cec20bb51a8024fbaa890e5d0bcbb521
tree2d54e707851851bcc3cbcc102d179d2abdfd668c
parent5f6e6d063ac1836b1a012bf886b2c76b4f86d0de
ALSA: pcm: Check PCM state at xfern compat ioctl

commit f13876e2c33a657a71bcbb10f767c0951b165020 upstream.

Since snd_pcm_ioctl_xfern_compat() has no PCM state check, it may go
further and hit the sanity check pcm_sanity_check() when the ioctl is
called right after open.  It may eventually spew a kernel warning, as
triggered by syzbot, depending on kconfig.

The lack of PCM state check there was just an oversight.  Although
it's no real crash, the spurious kernel warning is annoying, so let's
add the proper check.

Reported-by: syzbot+1dac3a4f6bc9c1c675d4@syzkaller.appspotmail.com
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/core/pcm_compat.c