Kaynağa Gözat

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 yıl önce
ebeveyn
işleme
75fc36eda0
1 değiştirilmiş dosya ile 5 ekleme ve 5 silme
  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;