lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Thu, 23 Dec 2021 08:46:53 +0800
From:   kernel test robot <lkp@...el.com>
To:     Bo Jiao <Bo.Jiao@...iatek.com>
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org, Felix Fietkau <nbd@....name>,
        Sujuan Chen <sujuan.chen@...iatek.com>,
        Ryder Lee <ryder.lee@...iatek.com>
Subject: [nbd168-wireless:mt76 10/28]
 drivers/net/wireless/mediatek/mt76/mt7915/mac.c:472:5: warning: variable
 'flags' set but not used

tree:   https://github.com/nbd168/wireless mt76
head:   05f0500c7b0147353e97de7369d504c5fbd3951e
commit: 0aa6b534b5e1cfe82e676d1d8f90bcea584565d3 [10/28] mt76: mt7915: update rx rate reporting for mt7916
config: mips-randconfig-r033-20211222 (https://download.01.org/0day-ci/archive/20211223/202112230801.vyMZPnaw-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project de4e0195ae1c39f1c3b07834b8e32c113f4f20eb)
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 mips cross compiling tool for clang build
        # apt-get install binutils-mips-linux-gnu
        # https://github.com/nbd168/wireless/commit/0aa6b534b5e1cfe82e676d1d8f90bcea584565d3
        git remote add nbd168-wireless https://github.com/nbd168/wireless
        git fetch --no-tags nbd168-wireless mt76
        git checkout 0aa6b534b5e1cfe82e676d1d8f90bcea584565d3
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash drivers/net/wireless/mediatek/mt76/mt7915/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:472:5: warning: variable 'flags' set but not used [-Wunused-but-set-variable]
           u8 flags, stbc, gi, bw, dcm, mode, nss;
              ^
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:535:3: warning: variable 'flags' is uninitialized when used here [-Wuninitialized]
                   flags |= RATE_INFO_FLAGS_HE_MCS;
                   ^~~~~
   drivers/net/wireless/mediatek/mt76/mt7915/mac.c:472:10: note: initialize the variable 'flags' to silence this warning
           u8 flags, stbc, gi, bw, dcm, mode, nss;
                   ^
                    = '\0'
   2 warnings generated.


vim +/flags +472 drivers/net/wireless/mediatek/mt76/mt7915/mac.c

   464	
   465	static int
   466	mt7915_mac_fill_rx_rate(struct mt7915_dev *dev,
   467				struct mt76_rx_status *status,
   468				struct ieee80211_supported_band *sband,
   469				__le32 *rxv)
   470	{
   471		u32 v0, v2;
 > 472		u8 flags, stbc, gi, bw, dcm, mode, nss;
   473		int i, idx;
   474		bool cck = false;
   475	
   476		v0 = le32_to_cpu(rxv[0]);
   477		v2 = le32_to_cpu(rxv[2]);
   478	
   479		idx = i = FIELD_GET(MT_PRXV_TX_RATE, v0);
   480		nss = FIELD_GET(MT_PRXV_NSTS, v0) + 1;
   481	
   482		if (!is_mt7915(&dev->mt76)) {
   483			stbc = FIELD_GET(MT_PRXV_HT_STBC, v0);
   484			gi = FIELD_GET(MT_PRXV_HT_SHORT_GI, v0);
   485			mode = FIELD_GET(MT_PRXV_TX_MODE, v0);
   486			dcm = FIELD_GET(MT_PRXV_DCM, v0);
   487			bw = FIELD_GET(MT_PRXV_FRAME_MODE, v0);
   488		} else {
   489			stbc = FIELD_GET(MT_CRXV_HT_STBC, v2);
   490			gi = FIELD_GET(MT_CRXV_HT_SHORT_GI, v2);
   491			mode = FIELD_GET(MT_CRXV_TX_MODE, v2);
   492			dcm = !!(idx & GENMASK(3, 0) & MT_PRXV_TX_DCM);
   493			bw = FIELD_GET(MT_CRXV_FRAME_MODE, v2);
   494		}
   495	
   496		switch (mode) {
   497		case MT_PHY_TYPE_CCK:
   498			cck = true;
   499			fallthrough;
   500		case MT_PHY_TYPE_OFDM:
   501			i = mt76_get_rate(&dev->mt76, sband, i, cck);
   502			break;
   503		case MT_PHY_TYPE_HT_GF:
   504		case MT_PHY_TYPE_HT:
   505			status->encoding = RX_ENC_HT;
   506			if (i > 31)
   507				return -EINVAL;
   508	
   509			flags = RATE_INFO_FLAGS_MCS;
   510			if (gi)
   511				flags |= RATE_INFO_FLAGS_SHORT_GI;
   512			break;
   513		case MT_PHY_TYPE_VHT:
   514			status->nss = nss;
   515			status->encoding = RX_ENC_VHT;
   516			if (i > 9)
   517				return -EINVAL;
   518	
   519			flags = RATE_INFO_FLAGS_VHT_MCS;
   520			if (gi)
   521				flags |= RATE_INFO_FLAGS_SHORT_GI;
   522			break;
   523		case MT_PHY_TYPE_HE_MU:
   524		case MT_PHY_TYPE_HE_SU:
   525		case MT_PHY_TYPE_HE_EXT_SU:
   526		case MT_PHY_TYPE_HE_TB:
   527			status->nss = nss;
   528			status->encoding = RX_ENC_HE;
   529			i &= GENMASK(3, 0);
   530	
   531			if (gi <= NL80211_RATE_INFO_HE_GI_3_2)
   532				status->he_gi = gi;
   533	
   534			status->he_dcm = dcm;
 > 535			flags |= RATE_INFO_FLAGS_HE_MCS;
   536			break;
   537		default:
   538			return -EINVAL;
   539		}
   540		status->rate_idx = i;
   541	
   542		switch (bw) {
   543		case IEEE80211_STA_RX_BW_20:
   544			break;
   545		case IEEE80211_STA_RX_BW_40:
   546			if (mode & MT_PHY_TYPE_HE_EXT_SU &&
   547			    (idx & MT_PRXV_TX_ER_SU_106T)) {
   548				status->bw = RATE_INFO_BW_HE_RU;
   549				status->he_ru =
   550					NL80211_RATE_INFO_HE_RU_ALLOC_106;
   551			} else {
   552				status->bw = RATE_INFO_BW_40;
   553			}
   554			break;
   555		case IEEE80211_STA_RX_BW_80:
   556			status->bw = RATE_INFO_BW_80;
   557			break;
   558		case IEEE80211_STA_RX_BW_160:
   559			status->bw = RATE_INFO_BW_160;
   560			break;
   561		default:
   562			return -EINVAL;
   563		}
   564	
   565		status->enc_flags |= RX_ENC_FLAG_STBC_MASK * stbc;
   566		if (mode < MT_PHY_TYPE_HE_SU && gi)
   567			status->enc_flags |= RX_ENC_FLAG_SHORT_GI;
   568	
   569		return 0;
   570	}
   571	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ