qseecom: fix secure app loading failure by kernel mode qseecom client

Make a change to fix secure app loading failure due to premature
kzfree() from __qseecom_load_fw(), when kernel mode qseecom client
tries to load app.

CRs-fixed: 694541

Change-Id: I1ac39ee885c12e08e863d976321dda2380ace852
Signed-off-by: William Clark <wclark@codeaurora.org>
This commit is contained in:
William Clark
2014-10-22 10:58:07 -07:00
parent 566ab13d2b
commit d83bdcb036
+1 -2
View File
@@ -1872,7 +1872,6 @@ static int __qseecom_load_fw(struct qseecom_dev_handle *data, char *appname)
ret = __qseecom_enable_clk_scale_up(data);
if (ret) {
kzfree(img_data);
ret = -EIO;
goto loadfw_err;
}
@@ -1882,7 +1881,6 @@ static int __qseecom_load_fw(struct qseecom_dev_handle *data, char *appname)
ret = scm_call(SCM_SVC_TZSCHEDULER, 1, &load_req,
sizeof(struct qseecom_load_app_ireq),
&resp, sizeof(resp));
kzfree(img_data);
if (ret) {
pr_err("scm_call to load failed : ret %d\n", ret);
ret = -EIO;
@@ -1910,6 +1908,7 @@ static int __qseecom_load_fw(struct qseecom_dev_handle *data, char *appname)
}
loadfw_err:
kzfree(img_data);
__qseecom_disable_clk_scale_down(data);
if (qseecom.support_bus_scaling) {
mutex_lock(&qsee_bw_mutex);