diff --git a/core/mac/src/pe/lim/lim_api.c b/core/mac/src/pe/lim/lim_api.c index 5e7b8e7eff41..cf777e032672 100644 --- a/core/mac/src/pe/lim/lim_api.c +++ b/core/mac/src/pe/lim/lim_api.c @@ -77,6 +77,7 @@ #include "wlan_scan_utils_api.h" #include #include +#include "wlan_pkt_capture_ucfg_api.h" struct pe_hang_event_fixed_param { uint32_t tlv_header; @@ -1236,6 +1237,13 @@ static QDF_STATUS pe_handle_mgmt_frame(struct wlan_objmgr_psoc *psoc, uint8_t *pRxPacketInfo; int ret; + /* skip offload packets */ + if (ucfg_pkt_capture_get_mode(psoc) && + mgmt_rx_params->status & WMI_RX_OFFLOAD_MON_MODE) { + qdf_nbuf_free(buf); + return QDF_STATUS_SUCCESS; + } + mac = cds_get_context(QDF_MODULE_ID_PE); if (!mac) { /* cannot log a failure without a valid mac */