Browse Source

Merge "touch: qts: free the memory of the acl and sgl descriptor"

qctecmdr 11 tháng trước cách đây
mục cha
commit
353309c3c8
1 tập tin đã thay đổi với 4 bổ sung1 xóa
  1. 4 1
      qts/qts_core.c

+ 4 - 1
qts/qts_core.c

@@ -423,7 +423,7 @@ static void qts_trusted_touch_tvm_vm_mode_enable(struct qts_data *qts_data)
 
 	if (rc < 0) {
 		pr_err("failed to get sync rc:%d\n", rc);
-		goto acl_fail;
+		goto sgl_fail;
 	}
 	qts_trusted_touch_set_vm_state(qts_data, TVM_I2C_SESSION_ACQUIRED);
 
@@ -435,6 +435,7 @@ static void qts_trusted_touch_tvm_vm_mode_enable(struct qts_data *qts_data)
 
 	kfree(expected_sgl_desc);
 	kfree(acl_desc);
+	kfree(sgl_desc);
 
 	irq = gh_irq_accept(qts_data->vm_info->irq_label, -1, IRQ_TYPE_EDGE_RISING);
 	qts_trusted_touch_intr_gpio_toggle(qts_data, false);
@@ -478,6 +479,8 @@ static void qts_trusted_touch_tvm_vm_mode_enable(struct qts_data *qts_data)
 	return;
 sgl_cmp_fail:
 	kfree(expected_sgl_desc);
+sgl_fail:
+	kfree(sgl_desc);
 acl_fail:
 	kfree(acl_desc);
 accept_fail: