qcacld-3.0: Fix compilation issue for 32 bit builds
In function csr_roam_chk_lnk_disassoc_ind frame size exceeds 1024 bytes. Because of this compilation fails on 32 bit systems as there is stack check flag on 32-bit compilation. Fix is to convert stack allocations to dynamic memory allocation. Change-Id: I7c91bc0ed91796ba4dac9c85ea4b1b6f2d8a6ee5 CRs-Fixed: 1055344
This commit is contained in:

committed by
qcabuildsw

parent
aecc49fabb
commit
51dece43e2
@@ -10287,9 +10287,17 @@ csr_roam_chk_lnk_disassoc_ind(tpAniSirGlobal mac_ctx, tSirSmeRsp *msg_ptr)
|
||||
QDF_STATUS status;
|
||||
tCsrRoamInfo *roam_info_ptr = NULL;
|
||||
tSirSmeDisassocInd *pDisassocInd;
|
||||
tSmeCmd cmd;
|
||||
tSmeCmd *cmd;
|
||||
tCsrRoamInfo roam_info;
|
||||
|
||||
cmd = qdf_mem_malloc(sizeof(*cmd));
|
||||
if (NULL == cmd) {
|
||||
sms_log(mac_ctx, LOGE,
|
||||
FL("memory allocation failed for size = %ld"),
|
||||
sizeof(*cmd));
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Check if AP dis-associated us because of MIC failure. If so,
|
||||
* then we need to take action immediately and not wait till the
|
||||
@@ -10303,6 +10311,7 @@ csr_roam_chk_lnk_disassoc_ind(tpAniSirGlobal mac_ctx, tSirSmeRsp *msg_ptr)
|
||||
sms_log(mac_ctx, LOGE, FL("Session Id not found for BSSID "
|
||||
MAC_ADDRESS_STR),
|
||||
MAC_ADDR_ARRAY(pDisassocInd->bssid.bytes));
|
||||
qdf_mem_free(cmd);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -10338,6 +10347,7 @@ csr_roam_chk_lnk_disassoc_ind(tpAniSirGlobal mac_ctx, tSirSmeRsp *msg_ptr)
|
||||
session = CSR_GET_SESSION(mac_ctx, sessionId);
|
||||
if (!session) {
|
||||
sms_log(mac_ctx, LOGE, FL("session %d not found"), sessionId);
|
||||
qdf_mem_free(cmd);
|
||||
return;
|
||||
}
|
||||
if (csr_is_conn_state_infra(mac_ctx, sessionId))
|
||||
@@ -10367,15 +10377,16 @@ csr_roam_chk_lnk_disassoc_ind(tpAniSirGlobal mac_ctx, tSirSmeRsp *msg_ptr)
|
||||
* STA/P2P client got disassociated so remove any pending
|
||||
* deauth commands in sme pending list
|
||||
*/
|
||||
cmd.command = eSmeCommandRoam;
|
||||
cmd.sessionId = (uint8_t) sessionId;
|
||||
cmd.u.roamCmd.roamReason = eCsrForcedDeauthSta;
|
||||
qdf_mem_copy(cmd.u.roamCmd.peerMac,
|
||||
cmd->command = eSmeCommandRoam;
|
||||
cmd->sessionId = (uint8_t) sessionId;
|
||||
cmd->u.roamCmd.roamReason = eCsrForcedDeauthSta;
|
||||
qdf_mem_copy(cmd->u.roamCmd.peerMac,
|
||||
pDisassocInd->peer_macaddr.bytes,
|
||||
QDF_MAC_ADDR_SIZE);
|
||||
csr_roam_remove_duplicate_command(mac_ctx, sessionId, &cmd,
|
||||
csr_roam_remove_duplicate_command(mac_ctx, sessionId, cmd,
|
||||
eCsrForcedDeauthSta);
|
||||
}
|
||||
qdf_mem_free(cmd);
|
||||
}
|
||||
|
||||
static void
|
||||
|
Reference in New Issue
Block a user