Hi, On Wed, May 9, 2018 at 10:01 AM, Lina Iyer <ilina@xxxxxxxxxxxxxx> 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 -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html