[ath6kl:pending 8/14] drivers/net/wireless/ath/ath10k/mac.c:3010:39: warning: address of array 'sar->sub_specs' will always evaluate to 'true'
kernel test robot
lkp at intel.com
Tue Feb 9 01:57:05 EST 2021
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git pending
head: 5c94a82422585f88765f58e0f8b4b84c1fabbb31
commit: b98c50fdd3bfa201487ef7fe3b9b41d76c7802d2 [8/14] ath10k: allow dynamic SAR power limits via common API
config: x86_64-randconfig-a011-20210209 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project c9439ca36342fb6013187d0a69aef92736951476)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?id=b98c50fdd3bfa201487ef7fe3b9b41d76c7802d2
git remote add ath6kl https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
git fetch --no-tags ath6kl pending
git checkout b98c50fdd3bfa201487ef7fe3b9b41d76c7802d2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
All warnings (new ones prefixed by >>):
>> drivers/net/wireless/ath/ath10k/mac.c:3010:39: warning: address of array 'sar->sub_specs' will always evaluate to 'true' [-Wpointer-bool-conversion]
sar->num_sub_specs == 0 || !sar->sub_specs) {
~~~~~~^~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:8635:7: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
vifs[i].old_ctx->def.chan->center_freq,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/debug.h:285:37: note: expanded from macro 'ath10k_dbg'
__ath10k_dbg(ar, dbg_mask, fmt, ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:8636:7: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
vifs[i].new_ctx->def.chan->center_freq,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/debug.h:285:37: note: expanded from macro 'ath10k_dbg'
__ath10k_dbg(ar, dbg_mask, fmt, ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:8708:6: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
ctx->def.chan->center_freq, ctx->def.width, ctx);
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/debug.h:285:37: note: expanded from macro 'ath10k_dbg'
__ath10k_dbg(ar, dbg_mask, fmt, ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:8732:6: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
ctx->def.chan->center_freq, ctx->def.width, ctx);
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/debug.h:285:37: note: expanded from macro 'ath10k_dbg'
__ath10k_dbg(ar, dbg_mask, fmt, ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:8797:6: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
ctx->def.chan->center_freq, ctx->def.width, ctx, changed);
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/debug.h:285:37: note: expanded from macro 'ath10k_dbg'
__ath10k_dbg(ar, dbg_mask, fmt, ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
6 warnings generated.
vim +3010 drivers/net/wireless/ath/ath10k/mac.c
2993
2994 static int ath10k_mac_set_sar_specs(struct ieee80211_hw *hw,
2995 const struct cfg80211_sar_specs *sar)
2996 {
2997 const struct cfg80211_sar_sub_specs *sub_specs;
2998 struct ath10k *ar = hw->priv;
2999 u32 i;
3000 int ret;
3001
3002 mutex_lock(&ar->conf_mutex);
3003
3004 if (!ar->hw_params.dynamic_sar_support) {
3005 ret = -EOPNOTSUPP;
3006 goto err;
3007 }
3008
3009 if (!sar || sar->type != NL80211_SAR_TYPE_POWER ||
> 3010 sar->num_sub_specs == 0 || !sar->sub_specs) {
3011 ret = -EINVAL;
3012 goto err;
3013 }
3014
3015 sub_specs = sar->sub_specs;
3016
3017 /* 0dbm is not a practical value for ath10k, so use 0
3018 * as no SAR limitation on it.
3019 */
3020 ar->tx_power_2g_limit = 0;
3021 ar->tx_power_5g_limit = 0;
3022
3023 /* note the power is in 0.25dbm unit, while ath10k uses
3024 * 0.5dbm unit.
3025 */
3026 for (i = 0; i < sar->num_sub_specs; i++) {
3027 if (sub_specs->freq_range_index == 0)
3028 ar->tx_power_2g_limit = sub_specs->power / 2;
3029 else if (sub_specs->freq_range_index == 1)
3030 ar->tx_power_5g_limit = sub_specs->power / 2;
3031
3032 sub_specs++;
3033 }
3034
3035 ret = ath10k_mac_set_sar_power(ar);
3036 if (ret) {
3037 ath10k_warn(ar, "failed to set sar power: %d", ret);
3038 goto err;
3039 }
3040
3041 err:
3042 mutex_unlock(&ar->conf_mutex);
3043 return ret;
3044 }
3045
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 42415 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/ath10k/attachments/20210209/2208a1c0/attachment-0001.gz>
More information about the ath10k
mailing list