From 3c633fef2085a4eee017b9c40985bcee28539b8b Mon Sep 17 00:00:00 2001 From: Sivacharan Paka <sipaka@codeaurora.org> Date: Mon, 27 Feb 2017 13:41:07 -0800 Subject: [PATCH] qseecom: add mutex around qseecom_set_client_mem_param Add mutex around qseecom_set_client_mem_param to prevent an ioctl thread modifying and corrupting data which is being processed by another ioctl in the other thread Bug: 34327981 Change-Id: I0cfb8afab4001c2913be693dfe44c761b9568893 Signed-off-by: Zhen Kong <zkong@codeaurora.org> --- drivers/misc/qseecom.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/misc/qseecom.c b/drivers/misc/qseecom.c index 79f5c7843fdc..facd7131c638 100644 --- a/drivers/misc/qseecom.c +++ b/drivers/misc/qseecom.c @@ -6517,7 +6517,11 @@ long qseecom_ioctl(struct file *file, unsigned cmd, unsigned long arg) break; } pr_debug("SET_MEM_PARAM: qseecom addr = 0x%pK\n", data); + mutex_lock(&app_access_lock); + atomic_inc(&data->ioctl_count); ret = qseecom_set_client_mem_param(data, argp); + atomic_dec(&data->ioctl_count); + mutex_unlock(&app_access_lock); if (ret) pr_err("failed Qqseecom_set_mem_param request: %d\n", ret); -- GitLab