On Tue, Nov 30, 2021 at 8:49 PM John Stultz <john.stultz@xxxxxxxxxx> wrote: > On Tue, Nov 23, 2021 at 7:29 PM Bjorn Andersson > <bjorn.andersson@xxxxxxxxxx> wrote: > > Rather than trying to synchronize away the side effects of > > of_platform_populate() I think we should stop using it. > > > > I had the very same problem in the qcom_wcnss remoteproc driver and > > in below change I got rid of that by manually initializing a struct > > device for the child node. In the event that the child probe defer I > > would just probe defer the parent as well. > > > > 1fcef985c8bd ("remoteproc: qcom: wcnss: Fix race with iris probe") > > > > The change might look a little bit messy, but the end result it much > > cleaner than relying on various locks etc. > > > > > > But in the qcom_wcnss case I have a child _device_ because I need > > something to do e.g. regulator_get() on. I fail to see why venc and vdec > > are devices in the first place. > > I definitely agree with Bjorn that all this asynchronous component > probing feels overly complicated, and a rework is probably the better > solution. > > Though my only question is: is someone planning to do this rework? > > In the meantime, Tadeusz' patch does resolve a *very* frequent boot > crash seen when the venus driver is enabled. > So Stanimir, should we consider merging this as a stop gap until the > larger probe rework is done? Stanimir? Does the above sound reasonable? thanks -john