[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f0fbc4cf-21ae-4332-8842-73f0467d16ff@stanley.mountain>
Date: Thu, 23 Jan 2025 13:38:30 +0300
From: Dan Carpenter <dan.carpenter@...aro.org>
To: jack21 <jackhuang021@...il.com>
Cc: sudeep.holla@....com, cristian.marussi@....com,
arm-scmi@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
Huangjie <huangjie1663@...tium.com.cn>
Subject: Re: [PATCH] dirvers: scmi: poll again when transfer reach timeout
s/dirvers/drivers/
On Thu, Jan 23, 2025 at 04:33:24PM +0800, jack21 wrote:
> From: Huangjie <huangjie1663@...tium.com.cn>
>
> spin_until_cond() not really hold a spin lock, possible timeout may occur
> in preemption kernel when preempted after spin_until_cond().
>
> We check status again when reach timeout is reached to prevent incorrect
> jugement of timeout.
>
I suspect the real issue is that we exit the spin loop when
try_wait_for_completion(&xfer->done) is true. Probably we should add
that as a Fixes tag?:
Fixes: ed7c04c1fea3 ("firmware: arm_scmi: Handle concurrent and out-of-order messages")
Btw, the scmi_xfer_done_no_timeout() has a confusing name, because it
does timeout. Was the "_no" an accident?
regards,
dan carpenter
Powered by blists - more mailing lists