From: Tomas Winkler Date: Sun, 7 Dec 2014 14:40:14 +0000 (+0200) Subject: mei: use uuid, me_addr tuple addressing also for flow control credits X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=2e5df413becf6bd3854d1eb4f96542a53848bb27;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git mei: use uuid, me_addr tuple addressing also for flow control credits Add uuid, me_addr addressing also for flow control credits. The only exception in cases for single buffer clients for which the host address in flow credits response is always 0 To in order to deal with add/remove race between fw and driver clients addressing we need to use [uuid, me_addr] tuple to address the clients Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c index 1382d551d7ed..3be18b7951e5 100644 --- a/drivers/misc/mei/client.c +++ b/drivers/misc/mei/client.c @@ -704,7 +704,7 @@ int mei_cl_flow_ctrl_creds(struct mei_cl *cl) if (cl->mei_flow_ctrl_creds > 0) return 1; - me_cl = mei_me_cl_by_id(dev, cl->me_client_id); + me_cl = mei_me_cl_by_uuid_id(dev, &cl->cl_uuid, cl->me_client_id); if (!me_cl) { cl_err(dev, cl, "no such me client %d\n", cl->me_client_id); return -ENOENT; @@ -738,7 +738,7 @@ int mei_cl_flow_ctrl_reduce(struct mei_cl *cl) dev = cl->dev; - me_cl = mei_me_cl_by_id(dev, cl->me_client_id); + me_cl = mei_me_cl_by_uuid_id(dev, &cl->cl_uuid, cl->me_client_id); if (!me_cl) { cl_err(dev, cl, "no such me client %d\n", cl->me_client_id); return -ENOENT;