Re: [PATCH] ASoC: rsnd: stop all working stream when .remove

Takashi Iwai
2017-09-01T08:17:12Z

On Fri, 01 Sep 2017 09:48:52 +0200,
Kuninori Morimoto wrote:
>
>
> Hi Takashi
>
> > > Driver should stop all working stream when .remove timing.
> > > Current Renesas sound driver is assuming that all stream was
> > > stopped when .remove but it was wrong.
> > > This patch stops all working stream when .remove, otherwise
> > > kernel will get damage for example in below case.
> > > Special thanks to Truong, Hiep
> > >
> > > > cd /sys/bus/platform/drivers/rcar_sound
> > > > aplay xxx.wav &
> > > > echo ec500000.sound > unbind
> > >
> > > Reported-by: Hiep Cao Minh <cm-hiep@jinso.co.jp>
> > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> >
> > The lack of stop sync is a known problem in the ALSA PCM
> > infrastructure. The standard idiom is to do sync at both prepare and
> > hw_free (or close) callbacks.
>
> Thanks.
> This path main sync is for clk ON/OFF

Hm, but it's managed as PCM trigger, no?
How can the rsnd_io_is_working() return true after PCM streams are
stopped?

Takashi