Re: [PATCH] soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot

From: Tony Lindgren
Date: Tue Dec 17 2019 - 13:35:54 EST


* santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx> [191217 18:33]:
> On 12/17/19 10:25 AM, Tony Lindgren wrote:
> > Hi,
> >
> > * Dave Gerlach <d-gerlach@xxxxxx> [191211 20:02]:
> > > Any user of wkup_m3_ipc calls wkup_m3_ipc_get to get a handle and this
> > > checks the value of the static variable m3_ipc_state to see if the
> > > wkup_m3 is ready. Currently this is populated during probe before
> > > rproc_boot has been called, meaning there is a window of time that
> > > wkup_m3_ipc_get can return a valid handle but the wkup_m3 itself is not
> > > ready, leading to invalid IPC calls to the wkup_m3 and system
> > > instability.
> > >
> > > To avoid this, move the population of the m3_ipc_state variable until
> > > after rproc_boot has succeeded to guarantee a valid and usable handle
> > > is always returned.
> >
> > Santosh, do you want me to pick this one into my fixes branch?
> >
> Sure, go ahead.
>
> Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>

OK thanks applying into fixes.

Tony