summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGupta, Kapil <kapgupta@qti.qualcomm.com>2016-08-22 14:58:44 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-08-23 11:42:37 +0530
commit444e2a86240fc9a759867001e59e6497b0355622 (patch)
treeac312ee9db6d11dadfa82178ae6430d0c71180eb
parentb2b69f044a68e7b57baf278f049860c3d13fb9fc (diff)
qcacld-2.0: Fix memory leak issue
Memory allocated for dfs filters in dfs_attach() API does not get freed in failure case. Add changes to fix memory leak issue. CRs-Fixed: 1057529 Change-Id: Id376de41505bdb3e8df0dc9883b1debf24b5a855
-rw-r--r--CORE/SERVICES/DFS/inc/dfs.h2
-rw-r--r--CORE/SERVICES/DFS/src/dfs.c8
2 files changed, 5 insertions, 5 deletions
diff --git a/CORE/SERVICES/DFS/inc/dfs.h b/CORE/SERVICES/DFS/inc/dfs.h
index 52ae15f1dea4..79fabf66d8c9 100644
--- a/CORE/SERVICES/DFS/inc/dfs.h
+++ b/CORE/SERVICES/DFS/inc/dfs.h
@@ -129,7 +129,7 @@
//#define MAX_BIN5_DUR 131 /* 105 * 1.25*/
#define MAX_BIN5_DUR 145 /* use 145 for osprey */ //conversion is already done using dfs->dur_multiplier//
#define MAX_BIN5_DUR_MICROSEC 105
-#define MAX_DFS_RADAR_TYPE 256
+#define MAX_DFS_RADAR_TABLE_TYPE 256
#define DFS_MARGIN_EQUAL(a, b, margin) ((DFS_DIFF(a,b)) <= margin)
#define DFS_MAX_STAGGERED_BURSTS 3
diff --git a/CORE/SERVICES/DFS/src/dfs.c b/CORE/SERVICES/DFS/src/dfs.c
index 5a73a7cda410..5bd2f3189050 100644
--- a/CORE/SERVICES/DFS/src/dfs.c
+++ b/CORE/SERVICES/DFS/src/dfs.c
@@ -410,14 +410,14 @@ dfs_attach(struct ieee80211com *ic)
/* Allocate memory for dc radar table */
dfs->dfs_dc_radartable = (int8_t **)OS_MALLOC(NULL,
- MAX_DFS_RADAR_TYPE * sizeof(int8_t *),
+ MAX_DFS_RADAR_TABLE_TYPE * sizeof(int8_t *),
GFP_ATOMIC);
if (!dfs->dfs_dc_radartable) {
DFS_PRINTK("%s: cannot allocate memory for radar table\n",
__func__);
goto bad2;
}
- for (n = 0; n < MAX_DFS_RADAR_TYPE; n++) {
+ for (n = 0; n < MAX_DFS_RADAR_TABLE_TYPE; n++) {
dfs->dfs_dc_radartable[n] = OS_MALLOC(NULL,
DFS_MAX_RADAR_OVERLAP * sizeof(int8_t),
GFP_ATOMIC);
@@ -467,7 +467,7 @@ dfs_attach(struct ieee80211com *ic)
bad3:
if (dfs->dfs_dc_radartable) {
- for (n = 0; n < DFS_MAX_RADAR_TYPES; n++) {
+ for (n = 0; n < MAX_DFS_RADAR_TABLE_TYPE; n++) {
if (dfs->dfs_dc_radartable[n]) {
OS_FREE(dfs->dfs_dc_radartable[n]);
dfs->dfs_dc_radartable[n] = NULL;
@@ -608,7 +608,7 @@ dfs_detach(struct ieee80211com *ic)
}
if (dfs->dfs_dc_radartable) {
- for (n = 0; n < DFS_MAX_RADAR_TYPES; n++) {
+ for (n = 0; n < MAX_DFS_RADAR_TABLE_TYPE; n++) {
if (dfs->dfs_dc_radartable[n]) {
OS_FREE(dfs->dfs_dc_radartable[n]);
dfs->dfs_dc_radartable[n] = NULL;