From mboxrd@z Thu Jan 1 00:00:00 1970 From: Doug Anderson Subject: Re: [PATCH v8 07/10] drivers: qcom: rpmh: cache sleep/wake state requests Date: Fri, 11 May 2018 13:18:12 -0700 Message-ID: References: <20180509170159.29682-1-ilina@codeaurora.org> <20180509170159.29682-8-ilina@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: In-Reply-To: <20180509170159.29682-8-ilina@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org To: Lina Iyer Cc: Andy Gross , David Brown , linux-arm-msm@vger.kernel.org, "open list:ARM/QUALCOMM SUPPORT" , Rajendra Nayak , Bjorn Andersson , LKML , Stephen Boyd , Evan Green , Matthias Kaehlcke , rplsssn@codeaurora.org List-Id: linux-arm-msm@vger.kernel.org Hi, On Wed, May 9, 2018 at 10:01 AM, Lina Iyer wrote: > /** > * struct rpmh_request: the message to be sent to rpmh-rsc > * > @@ -54,9 +71,15 @@ struct rpmh_request { > * struct rpmh_ctrlr: our representation of the controller > * > * @drv: the controller instance > + * @cache: the list of cached requests > + * @lock: synchronize access to the controller data nit: this makes it sound like this lock will be grabbed for all calls into rpmh-rsc. In fact, it only protects access to the cache. Ideally name it cache_lock and document that it's for protecting the cache. > +/** > + * rpmh_flush: Flushes the buffered active and sleep sets to TCS > + * > + * @dev: The device making the request > + * > + * Return: -EBUSY if the controller is busy, probably waiting on a response > + * to a RPMH request sent earlier. > + * > + * This function is generally called from the sleep code from the last CPU "is generally" implies that sometimes it's not called from the sleep code. Change to "is always". If "is generally" is more correct, you can't run lockless right? -Doug