aboutsummaryrefslogtreecommitdiffstats
path: root/lib/xarray.c
diff options
context:
space:
mode:
authorDave Gerlach <[email protected]>2019-12-12 04:03:14 +0000
committerTony Lindgren <[email protected]>2019-12-17 23:18:36 +0000
commit03729cfa0d543bc996bf959e762ec999afc8f3d2 (patch)
treea9e20fc773c6c3f764af1300530c104458a42568 /lib/xarray.c
parentARM: dts: beagle-x15-common: Model 5V0 regulator (diff)
downloadkernel-03729cfa0d543bc996bf959e762ec999afc8f3d2.tar.gz
kernel-03729cfa0d543bc996bf959e762ec999afc8f3d2.zip
soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot
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. Reported-by: Suman Anna <[email protected]> Signed-off-by: Dave Gerlach <[email protected]> Acked-by: Santosh Shilimkar <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
Diffstat (limited to 'lib/xarray.c')
0 files changed, 0 insertions, 0 deletions