Re: [Alsa-devel] Slab corruptions & Re: 2.6.17-rc1: Oops in sound applications

Jan Niehusmann
2006-04-05T09:01:23Z

On Wed, Apr 05, 2006 at 02:28:47AM +0200, Jan Niehusmann wrote:
> If I now add the patch you suggested, correcting the check in
> snd_pcm_oss_open_file(), accessing /dev/dsp instead leads to EINVAL.
>
> So I guess git bisect really lead me to this already known bug.

And another update. Sorry for sending so many small mails, but I want to
keep you informed to avoid unnecessary duplication of work.

To make sure I didn't do something stupid like confusing kernel
versions, I retried with 2.6.17-rc1 and the mentioned patch. It oopses
again, but the behaviour is different:

Versions 2.6.16 to commit bf1bbb5a49eec51c30d341606885507b501b37e8 only
allow a single open of /dev/dsp, and do not oops.

Commit 3bf75f9b90c981f18f27a0d35a44f488ab68c8ea and later do oops with
commands as simple as 'yes >/dev/dsp'.

Commit 3bf75f9b90c981f18f27a0d35a44f488ab68c8ea with the patch to
snd_pcm_oss_open_file() applied do not oops, but block every access to
/dev/dsp with EINVAL.

2.6.17-rc1 with the patch to snd_pcm_oss_open_file(), again, allows
opening of /dev/dsp, 'yes >/dev/dsp' does work as expected, but for
example twinkle (a VoIP application) gives garbled sound. Additionally,
I am now able to open /dev/dsp a second time (eg. 'yes >/dev/dsp' while
twinkle uses the sound device), immediately leading to an oops.

My guess is that this bug is just not triggered in commit
3bf75f9b90c981f18f27a0d35a44f488ab68c8ea because, for some other reason,
/dev/dsp is completely unusable.

Jan