[alsa-devel] [PATCH 2/3] sound: enable interrupt after dma buffer initialization

Yu Zhao yuzhao at google.com
Tue Sep 11 22:58:25 CEST 2018


On Tue, Sep 11, 2018 at 08:06:49AM +0200, Takashi Iwai wrote:
> On Mon, 10 Sep 2018 23:21:50 +0200,
> Yu Zhao wrote:
> > 
> > In snd_hdac_bus_init_chip(), we enable interrupt before
> > snd_hdac_bus_init_cmd_io() initializing dma buffers. If irq has
> > been acquired and irq handler uses the dma buffer, kernel may crash
> > when interrupt comes in.
> > 
> > Fix the problem by postponing enabling irq after dma buffer
> > initialization. And warn once on null dma buffer pointer during the
> > initialization.
> > 
> > Signed-off-by: Yu Zhao <yuzhao at google.com>
> 
> Looks good to me.
> 
> Reviewed-by: Takashi Iwai <tiwai at suse.de>
> 
> 
> BTW, the reason why this hasn't been hit on the legacy HD-audio driver
> is that we allocate usually with MSI, so the irq is isolated.
> 
> Any reason that Intel SKL driver doesn't use MST?

This I'm not sure. Vinod might have answer to it, according to
https://patchwork.kernel.org/patch/6375831/#13796611


More information about the Alsa-devel mailing list