Browse Source

qcacld-3.0: Free apf memory when interpreter is enabled

Dynamically allocated apf buffer memory is not freed in error case
when interpreter is enabled and leading to memory leak. Free APF
buffer memory in case APF interpreter is enabled to avoid memory
leak.

Change-Id: I012bf80eb6db7b986f812161b48f96b0965c0542
CRs-Fixed: 2308702
Rajeev Kumar 6 years ago
parent
commit
75fc36eda0
1 changed files with 5 additions and 5 deletions
  1. 5 5
      core/hdd/src/wlan_hdd_apf.c

+ 5 - 5
core/hdd/src/wlan_hdd_apf.c

@@ -506,6 +506,11 @@ static int hdd_apf_read_memory(struct hdd_adapter *adapter, struct nlattr **tb)
 
 	hdd_enter();
 
+	if (context->apf_enabled) {
+		hdd_err("Cannot get/set while interpreter is enabled");
+		return -EINVAL;
+	}
+
 	read_mem_params.vdev_id = adapter->session_id;
 
 	/* Read APF work memory offset */
@@ -531,11 +536,6 @@ static int hdd_apf_read_memory(struct hdd_adapter *adapter, struct nlattr **tb)
 		return -ENOMEM;
 	}
 
-	if (context->apf_enabled) {
-		hdd_err("Cannot get/set while interpreter is enabled");
-		return -EINVAL;
-	}
-
 	qdf_event_reset(&context->qdf_apf_event);
 	context->offset = read_mem_params.addr_offset;