diff options
| author | jiad <jiad@codeaurora.org> | 2018-01-02 13:06:16 +0800 |
|---|---|---|
| committer | snandini <snandini@codeaurora.org> | 2018-01-22 22:47:35 -0800 |
| commit | 1cd727cf74be00395117678bfa588eb1698ee63c (patch) | |
| tree | 6254a42a5577a065a726b307af98f041e6f9fd4e | |
| parent | f214806dc573bae3627005e96ddb84d50f14d521 (diff) | |
qcacld-3.0: Fix frame-larger-than build error
Build option -Werror=frame-larger-than= throws frame size larger than
1024 bytes build errors.
Change-Id: I7d6b87e247f8c4dc31b2f4f0cd108f404fabacd1
CRs-Fixed: 2165532
| -rw-r--r-- | core/hdd/src/wlan_hdd_main.c | 18 | ||||
| -rw-r--r-- | core/sme/inc/sme_api.h | 4 | ||||
| -rw-r--r-- | core/sme/src/common/sme_api.c | 65 |
3 files changed, 70 insertions, 17 deletions
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index f0d0aafc944a..dac01a516a9c 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -7117,7 +7117,8 @@ hdd_display_netif_queue_history_compact(hdd_context_t *hdd_ctx) qdf_time_t total, pause, unpause, curr_time, delta; QDF_STATUS status; char temp_str[20 * WLAN_REASON_TYPE_MAX]; - char comb_log_str[(ADAP_NETIFQ_LOG_LEN * MAX_NUMBER_OF_ADAPTERS) + 1]; + char *comb_log_str; + uint32_t comb_log_str_size; struct ol_txrx_pdev_t *pdev = cds_get_context(QDF_MODULE_ID_TXRX); hdd_adapter_t *adapter = NULL; hdd_adapter_list_node_t *adapter_node = NULL, *next = NULL; @@ -7127,8 +7128,14 @@ hdd_display_netif_queue_history_compact(hdd_context_t *hdd_ctx) return; } + comb_log_str_size = (ADAP_NETIFQ_LOG_LEN * MAX_NUMBER_OF_ADAPTERS) + 1; + comb_log_str = qdf_mem_malloc(comb_log_str_size); + if (!comb_log_str) { + hdd_err("failed to alloc comb_log_str"); + return; + } + bytes_written = 0; - qdf_mem_set(comb_log_str, 0, sizeof(comb_log_str)); status = hdd_get_front_adapter(hdd_ctx, &adapter_node); while (NULL != adapter_node && QDF_STATUS_SUCCESS == status) { adapter = adapter_node->pAdapter; @@ -7167,8 +7174,8 @@ hdd_display_netif_queue_history_compact(hdd_context_t *hdd_ctx) hdd_warn("log truncated"); bytes_written += snprintf(&comb_log_str[bytes_written], - bytes_written >= sizeof(comb_log_str) ? 0 : - sizeof(comb_log_str) - bytes_written, + bytes_written >= comb_log_str_size ? 0 : + comb_log_str_size - bytes_written, "[%d %d] (%d) %u/%ums %s|", adapter->sessionId, adapter->device_mode, adapter->pause_map, @@ -7187,9 +7194,10 @@ hdd_display_netif_queue_history_compact(hdd_context_t *hdd_ctx) pdev->tx_desc.num_free, pdev->tx_desc.pool_size, comb_log_str); - if (bytes_written >= sizeof(comb_log_str)) + if (bytes_written >= comb_log_str_size) hdd_warn("log string truncated"); + qdf_mem_free(comb_log_str); } /** diff --git a/core/sme/inc/sme_api.h b/core/sme/inc/sme_api.h index 1017890ed6f1..9a750586d0dc 100644 --- a/core/sme/inc/sme_api.h +++ b/core/sme/inc/sme_api.h @@ -922,8 +922,8 @@ const char *sme_scan_type_to_string(const uint8_t scan_type); const char *sme_bss_type_to_string(const uint8_t bss_type); QDF_STATUS sme_ap_disable_intra_bss_fwd(tHalHandle hHal, uint8_t sessionId, bool disablefwd); -uint32_t sme_get_channel_bonding_mode5_g(tHalHandle hHal); -uint32_t sme_get_channel_bonding_mode24_g(tHalHandle hHal); +QDF_STATUS sme_get_channel_bonding_mode5_g(tHalHandle hHal, uint32_t *mode); +QDF_STATUS sme_get_channel_bonding_mode24_g(tHalHandle hHal, uint32_t *mode); #ifdef WLAN_FEATURE_STATS_EXT typedef struct sStatsExtRequestReq { uint32_t request_data_len; diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index 632cd7bc729c..06ff6629f4fe 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -3816,17 +3816,39 @@ eCsrPhyMode sme_get_phy_mode(tHalHandle hHal) * sme_get_channel_bonding_mode5_g() - get the channel bonding mode for 5G band * * @hHal - HAL handle + * @mode - channel bonding mode * - * Return channel bonding mode for 5G + * Return QDF_STATUS */ -uint32_t sme_get_channel_bonding_mode5_g(tHalHandle hHal) +QDF_STATUS sme_get_channel_bonding_mode5_g(tHalHandle hHal, uint32_t *mode) { tpAniSirGlobal pMac = PMAC_STRUCT(hHal); - tSmeConfigParams smeConfig; + tSmeConfigParams *smeConfig; + + if (!mode) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: invalid mode", __func__); + return QDF_STATUS_E_FAILURE; + } - sme_get_config_param(pMac, &smeConfig); + smeConfig = qdf_mem_malloc(sizeof(*smeConfig)); + if (!smeConfig) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: failed to alloc smeConfig", __func__); + return QDF_STATUS_E_NOMEM; + } - return smeConfig.csrConfig.channelBondingMode5GHz; + if (sme_get_config_param(pMac, smeConfig) != QDF_STATUS_SUCCESS) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: sme_get_config_param failed", __func__); + qdf_mem_free(smeConfig); + return QDF_STATUS_E_FAILURE; + } + + *mode = smeConfig->csrConfig.channelBondingMode5GHz; + qdf_mem_free(smeConfig); + + return QDF_STATUS_SUCCESS; } /** @@ -3834,16 +3856,39 @@ uint32_t sme_get_channel_bonding_mode5_g(tHalHandle hHal) * band * * hHal - HAL handle - * Return channel bonding mode for 2.4G + * @mode - channel bonding mode + * + * Return QDF_STATUS */ -uint32_t sme_get_channel_bonding_mode24_g(tHalHandle hHal) +QDF_STATUS sme_get_channel_bonding_mode24_g(tHalHandle hHal, uint32_t *mode) { tpAniSirGlobal pMac = PMAC_STRUCT(hHal); - tSmeConfigParams smeConfig; + tSmeConfigParams *smeConfig; + + if (!mode) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: invalid mode", __func__); + return QDF_STATUS_E_FAILURE; + } + + smeConfig = qdf_mem_malloc(sizeof(*smeConfig)); + if (!smeConfig) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: failed to alloc smeConfig", __func__); + return QDF_STATUS_E_NOMEM; + } - sme_get_config_param(pMac, &smeConfig); + if (sme_get_config_param(pMac, smeConfig) != QDF_STATUS_SUCCESS) { + QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, + "%s: sme_get_config_param failed", __func__); + qdf_mem_free(smeConfig); + return QDF_STATUS_E_FAILURE; + } + + *mode = smeConfig->csrConfig.channelBondingMode24GHz; + qdf_mem_free(smeConfig); - return smeConfig.csrConfig.channelBondingMode24GHz; + return QDF_STATUS_SUCCESS; } /** |
