Re: sound: use-after-free in snd_timer_interrupt

From: Takashi Iwai
Date: Fri Jan 15 2016 - 06:00:17 EST


On Fri, 15 Jan 2016 09:06:10 +0100,
Dmitry Vyukov wrote:
>
> On Thu, Jan 14, 2016 at 5:09 PM, Takashi Iwai <tiwai@xxxxxxx> wrote:
> > On Wed, 13 Jan 2016 21:54:10 +0100,
> > Takashi Iwai wrote:
> >>
> >> OK, then this might be a possible race at the current snd_timer_stop()
> >> implementation. There is no sync action there, so the ISR might be
> >> still alive after snd_timer_close() call. Or might be another race.
> >> This pattern looks a bit different, as it's involved with hrtimer.
> >>
> >> I'll take a look at it tomorrow.
> >
> > I've audited the code today, but the open window doesn't look like
> > what I expected. I found only some possible cases with slave timer
> > instances.
> >
> > In anyway, below is a test fix patch. Since I couldn't reproduce the
> > issue on my local machines, it's hard to say whether this covers the
> > holes you fell. Let's see...
>
>
> Hi Takashi,
>
> I would be interested to understand why other people can't reproduce
> issues that I hit pretty reliably.
> I suspect that it can be due to .config. Please try with the following
> config values.

I guess rather other config, e.g. the kernel debug options.
I suppose you enabled KASAN and DEBUG_LIST. What else?


> I also start qemu with "-soundhw all" arg.

OK, so you're testing with VM? This makes easier to recheck.


Takashi