Hi Mathieu, Tanmay

> Subject: Re: [PATCH 0/3] remoteproc: xlnx: remote crash recovery
....
> >
> 
> So what is happening here - Peng, do you plan on providing more
> debugging information? Tanmay - are you planning on sending a
> second revision?
> 

Sorry for delay.  I gave a hack with below changes(at end) and it works.
The below change is just hack code to let me verify the rproc->power value.
The issue with current patchset is that after rproc_attach(),
the rproc->power will be 0. So recovery only works for the 1st time,
when it is triggered again, rproc_detach() will abort early in the if check: 
if (!atomic_dec_and_test(&rproc->power)) {
ret = 0;
return ret;
}

---------------
diff --git a/drivers/remoteproc/remoteproc_core.c 
b/drivers/remoteproc/remoteproc_core.c
index a92c6cd6df67b..2b69304084d11 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
@@ -1786,7 +1786,9 @@ static int rproc_attach_recovery(struct rproc *rproc)
        if (ret)
                return ret;
 
-       return rproc_attach(rproc);
+       ret = rproc_attach(rproc);
+       atomic_set(&rproc->power, 1);
+       return ret;
 }

Thanks,
Peng.

> > Thanks,
> > Peng
> >
> > >>
> > >> Thanks,
> > >> Tanmay
> > >>
> > >> > Thanks,
> > >> > Peng
> > >>
> > >


Reply via email to