summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CORE/HDD/src/wlan_hdd_wext.c4
-rw-r--r--CORE/SERVICES/WMA/wma.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c
index f1a3305c8e5f..cb999c6bd3c2 100644
--- a/CORE/HDD/src/wlan_hdd_wext.c
+++ b/CORE/HDD/src/wlan_hdd_wext.c
@@ -11072,6 +11072,10 @@ static const struct iw_priv_args we_private_args[] = {
{ WE_SET_SMPS_PARAM,
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 2,
0, "set_smps_param" },
+ { WLAN_SET_DOT11P_CHANNEL_SCHED,
+ IW_PRIV_TYPE_BYTE
+ | sizeof(struct dot11p_channel_sched),
+ 0, "set_dot11p" },
#ifdef DEBUG
{ WE_SET_FW_CRASH_INJECT,
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 2,
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index 0611194bd8a8..1751cb7aecd6 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -23698,7 +23698,10 @@ VOS_STATUS wma_mc_process_msg(v_VOID_t *vos_context, vos_msg_t *msg)
case WDA_OCB_SET_SCHED_REQUEST:
wma_ocb_set_sched_req(wma_handle,
(sir_ocb_set_sched_request_t *)(msg->bodyptr));
- vos_mem_free(msg->bodyptr);
+ /* no need to vos_mem_free(msg->bodyptr) here. This synchronous
+ * request is waiting on completion in
+ * iw_set_dot11p_channel_sched()
+ * which will clean up the request buffer. */
break;
#ifdef FEATURE_BUS_AUTO_SUSPEND
case WDA_WLAN_AUTO_SUSPEND_IND: