* [nbd168-wireless:mt76 10/100] drivers/net/wireless/mediatek/mt76/mt7915/mac.c:1169:6: warning: variable 'stat' set but not used
@ 2021-06-19 12:11 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-06-19 12:11 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 12808 bytes --]
tree: https://github.com/nbd168/wireless mt76
head: 61a1f99dd1e3c145fce9d601b52e7adb8f37322a
commit: 223fd4f843081059bc8f8d8ba6363bfcc2e5848f [10/100] mt76: mt7915: rework tx rate reporting
config: x86_64-randconfig-r033-20210618 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project d1baf2895467735ab14f4b3415fce204c0cc8e7f)
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://github.com/nbd168/wireless/commit/223fd4f843081059bc8f8d8ba6363bfcc2e5848f
git remote add nbd168-wireless https://github.com/nbd168/wireless
git fetch --no-tags nbd168-wireless mt76
git checkout 223fd4f843081059bc8f8d8ba6363bfcc2e5848f
# 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@intel.com>
All warnings (new ones prefixed by >>):
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:1169:6: warning: variable 'stat' set but not used [-Wunused-but-set-variable]
u8 stat;
^
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:1257:21: warning: variable 'dev' set but not used [-Wunused-but-set-variable]
struct mt7915_dev *dev;
^
2 warnings generated.
vim +/stat +1169 drivers/net/wireless/mediatek/mt76/mt7915/mac.c
e57b7901469fc0 Ryder Lee 2020-04-25 1139
338330bd26b1fe Felix Fietkau 2021-05-07 1140 static void
338330bd26b1fe Felix Fietkau 2021-05-07 1141 mt7915_mac_tx_free(struct mt7915_dev *dev, struct sk_buff *skb)
e57b7901469fc0 Ryder Lee 2020-04-25 1142 {
e57b7901469fc0 Ryder Lee 2020-04-25 1143 struct mt7915_tx_free *free = (struct mt7915_tx_free *)skb->data;
e57b7901469fc0 Ryder Lee 2020-04-25 1144 struct mt76_dev *mdev = &dev->mt76;
4c430774e01b06 Lorenzo Bianconi 2020-11-13 1145 struct mt76_phy *mphy_ext = mdev->phy2;
e57b7901469fc0 Ryder Lee 2020-04-25 1146 struct mt76_txwi_cache *txwi;
e57b7901469fc0 Ryder Lee 2020-04-25 1147 struct ieee80211_sta *sta = NULL;
660915d052c606 Felix Fietkau 2020-09-01 1148 LIST_HEAD(free_list);
660915d052c606 Felix Fietkau 2020-09-01 1149 struct sk_buff *tmp;
e57b7901469fc0 Ryder Lee 2020-04-25 1150 u8 i, count;
5342758d5522db Felix Fietkau 2020-11-21 1151 bool wake = false;
e57b7901469fc0 Ryder Lee 2020-04-25 1152
f8a667a9af9198 Felix Fietkau 2020-08-22 1153 /* clean DMA queues and unmap buffers first */
91990519298e23 Lorenzo Bianconi 2020-11-11 1154 mt76_queue_tx_cleanup(dev, dev->mphy.q_tx[MT_TXQ_PSD], false);
91990519298e23 Lorenzo Bianconi 2020-11-11 1155 mt76_queue_tx_cleanup(dev, dev->mphy.q_tx[MT_TXQ_BE], false);
4c430774e01b06 Lorenzo Bianconi 2020-11-13 1156 if (mphy_ext) {
4c430774e01b06 Lorenzo Bianconi 2020-11-13 1157 mt76_queue_tx_cleanup(dev, mphy_ext->q_tx[MT_TXQ_PSD], false);
4c430774e01b06 Lorenzo Bianconi 2020-11-13 1158 mt76_queue_tx_cleanup(dev, mphy_ext->q_tx[MT_TXQ_BE], false);
4c430774e01b06 Lorenzo Bianconi 2020-11-13 1159 }
f8a667a9af9198 Felix Fietkau 2020-08-22 1160
e57b7901469fc0 Ryder Lee 2020-04-25 1161 /*
e57b7901469fc0 Ryder Lee 2020-04-25 1162 * TODO: MT_TX_FREE_LATENCY is msdu time from the TXD is queued into PLE,
e57b7901469fc0 Ryder Lee 2020-04-25 1163 * to the time ack is received or dropped by hw (air + hw queue time).
e57b7901469fc0 Ryder Lee 2020-04-25 1164 * Should avoid accessing WTBL to get Tx airtime, and use it instead.
e57b7901469fc0 Ryder Lee 2020-04-25 1165 */
e57b7901469fc0 Ryder Lee 2020-04-25 1166 count = FIELD_GET(MT_TX_FREE_MSDU_CNT, le16_to_cpu(free->ctrl));
e57b7901469fc0 Ryder Lee 2020-04-25 1167 for (i = 0; i < count; i++) {
e57b7901469fc0 Ryder Lee 2020-04-25 1168 u32 msdu, info = le32_to_cpu(free->info[i]);
e57b7901469fc0 Ryder Lee 2020-04-25 @1169 u8 stat;
e57b7901469fc0 Ryder Lee 2020-04-25 1170
e57b7901469fc0 Ryder Lee 2020-04-25 1171 /*
e57b7901469fc0 Ryder Lee 2020-04-25 1172 * 1'b1: new wcid pair.
e57b7901469fc0 Ryder Lee 2020-04-25 1173 * 1'b0: msdu_id with the same 'wcid pair' as above.
e57b7901469fc0 Ryder Lee 2020-04-25 1174 */
e57b7901469fc0 Ryder Lee 2020-04-25 1175 if (info & MT_TX_FREE_PAIR) {
e57b7901469fc0 Ryder Lee 2020-04-25 1176 struct mt7915_sta *msta;
1daf2522fa1604 Felix Fietkau 2020-07-26 1177 struct mt7915_phy *phy;
e57b7901469fc0 Ryder Lee 2020-04-25 1178 struct mt76_wcid *wcid;
e57b7901469fc0 Ryder Lee 2020-04-25 1179 u16 idx;
e57b7901469fc0 Ryder Lee 2020-04-25 1180
e57b7901469fc0 Ryder Lee 2020-04-25 1181 count++;
e57b7901469fc0 Ryder Lee 2020-04-25 1182 idx = FIELD_GET(MT_TX_FREE_WLAN_ID, info);
e57b7901469fc0 Ryder Lee 2020-04-25 1183 wcid = rcu_dereference(dev->mt76.wcid[idx]);
e57b7901469fc0 Ryder Lee 2020-04-25 1184 sta = wcid_to_sta(wcid);
e57b7901469fc0 Ryder Lee 2020-04-25 1185 if (!sta)
e57b7901469fc0 Ryder Lee 2020-04-25 1186 continue;
e57b7901469fc0 Ryder Lee 2020-04-25 1187
e57b7901469fc0 Ryder Lee 2020-04-25 1188 msta = container_of(wcid, struct mt7915_sta, wcid);
1daf2522fa1604 Felix Fietkau 2020-07-26 1189 phy = msta->vif->phy;
1daf2522fa1604 Felix Fietkau 2020-07-26 1190 spin_lock_bh(&dev->sta_poll_lock);
1daf2522fa1604 Felix Fietkau 2020-07-26 1191 if (list_empty(&msta->stats_list))
1daf2522fa1604 Felix Fietkau 2020-07-26 1192 list_add_tail(&msta->stats_list, &phy->stats_list);
1daf2522fa1604 Felix Fietkau 2020-07-26 1193 if (list_empty(&msta->poll_list))
1daf2522fa1604 Felix Fietkau 2020-07-26 1194 list_add_tail(&msta->poll_list, &dev->sta_poll_list);
1daf2522fa1604 Felix Fietkau 2020-07-26 1195 spin_unlock_bh(&dev->sta_poll_lock);
6425791d350301 Felix Fietkau 2020-09-27 1196 continue;
e57b7901469fc0 Ryder Lee 2020-04-25 1197 }
e57b7901469fc0 Ryder Lee 2020-04-25 1198
e57b7901469fc0 Ryder Lee 2020-04-25 1199 msdu = FIELD_GET(MT_TX_FREE_MSDU_ID, info);
e57b7901469fc0 Ryder Lee 2020-04-25 1200 stat = FIELD_GET(MT_TX_FREE_STATUS, info);
e57b7901469fc0 Ryder Lee 2020-04-25 1201
d089692bc7938a Lorenzo Bianconi 2021-04-20 1202 txwi = mt76_token_release(mdev, msdu, &wake);
e57b7901469fc0 Ryder Lee 2020-04-25 1203 if (!txwi)
e57b7901469fc0 Ryder Lee 2020-04-25 1204 continue;
e57b7901469fc0 Ryder Lee 2020-04-25 1205
223fd4f8430810 Felix Fietkau 2021-05-07 1206 mt7915_txwi_free(dev, txwi, sta, &free_list);
e57b7901469fc0 Ryder Lee 2020-04-25 1207 }
0f1c443ca9cfa0 Felix Fietkau 2020-08-20 1208
0f1c443ca9cfa0 Felix Fietkau 2020-08-20 1209 mt7915_mac_sta_poll(dev);
5342758d5522db Felix Fietkau 2020-11-21 1210
d089692bc7938a Lorenzo Bianconi 2021-04-20 1211 if (wake)
d089692bc7938a Lorenzo Bianconi 2021-04-20 1212 mt76_set_tx_blocked(&dev->mt76, false);
5342758d5522db Felix Fietkau 2020-11-21 1213
781eef5b34c57d Felix Fietkau 2020-07-24 1214 mt76_worker_schedule(&dev->mt76.tx_worker);
660915d052c606 Felix Fietkau 2020-09-01 1215
660915d052c606 Felix Fietkau 2020-09-01 1216 napi_consume_skb(skb, 1);
660915d052c606 Felix Fietkau 2020-09-01 1217
660915d052c606 Felix Fietkau 2020-09-01 1218 list_for_each_entry_safe(skb, tmp, &free_list, list) {
660915d052c606 Felix Fietkau 2020-09-01 1219 skb_list_del_init(skb);
660915d052c606 Felix Fietkau 2020-09-01 1220 napi_consume_skb(skb, 1);
660915d052c606 Felix Fietkau 2020-09-01 1221 }
e57b7901469fc0 Ryder Lee 2020-04-25 1222 }
e57b7901469fc0 Ryder Lee 2020-04-25 1223
338330bd26b1fe Felix Fietkau 2021-05-07 1224 void mt7915_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,
338330bd26b1fe Felix Fietkau 2021-05-07 1225 struct sk_buff *skb)
338330bd26b1fe Felix Fietkau 2021-05-07 1226 {
338330bd26b1fe Felix Fietkau 2021-05-07 1227 struct mt7915_dev *dev = container_of(mdev, struct mt7915_dev, mt76);
338330bd26b1fe Felix Fietkau 2021-05-07 1228 __le32 *rxd = (__le32 *)skb->data;
338330bd26b1fe Felix Fietkau 2021-05-07 1229 enum rx_pkt_type type;
338330bd26b1fe Felix Fietkau 2021-05-07 1230
338330bd26b1fe Felix Fietkau 2021-05-07 1231 type = FIELD_GET(MT_RXD0_PKT_TYPE, le32_to_cpu(rxd[0]));
338330bd26b1fe Felix Fietkau 2021-05-07 1232
338330bd26b1fe Felix Fietkau 2021-05-07 1233 switch (type) {
338330bd26b1fe Felix Fietkau 2021-05-07 1234 case PKT_TYPE_TXRX_NOTIFY:
338330bd26b1fe Felix Fietkau 2021-05-07 1235 mt7915_mac_tx_free(dev, skb);
338330bd26b1fe Felix Fietkau 2021-05-07 1236 break;
338330bd26b1fe Felix Fietkau 2021-05-07 1237 case PKT_TYPE_RX_EVENT:
338330bd26b1fe Felix Fietkau 2021-05-07 1238 mt7915_mcu_rx_event(dev, skb);
338330bd26b1fe Felix Fietkau 2021-05-07 1239 break;
338330bd26b1fe Felix Fietkau 2021-05-07 1240 case PKT_TYPE_TXRXV:
338330bd26b1fe Felix Fietkau 2021-05-07 1241 mt7915_mac_fill_rx_vector(dev, skb);
338330bd26b1fe Felix Fietkau 2021-05-07 1242 break;
338330bd26b1fe Felix Fietkau 2021-05-07 1243 case PKT_TYPE_NORMAL:
338330bd26b1fe Felix Fietkau 2021-05-07 1244 if (!mt7915_mac_fill_rx(dev, skb)) {
338330bd26b1fe Felix Fietkau 2021-05-07 1245 mt76_rx(&dev->mt76, q, skb);
338330bd26b1fe Felix Fietkau 2021-05-07 1246 return;
338330bd26b1fe Felix Fietkau 2021-05-07 1247 }
338330bd26b1fe Felix Fietkau 2021-05-07 1248 fallthrough;
338330bd26b1fe Felix Fietkau 2021-05-07 1249 default:
338330bd26b1fe Felix Fietkau 2021-05-07 1250 dev_kfree_skb(skb);
338330bd26b1fe Felix Fietkau 2021-05-07 1251 break;
338330bd26b1fe Felix Fietkau 2021-05-07 1252 }
338330bd26b1fe Felix Fietkau 2021-05-07 1253 }
338330bd26b1fe Felix Fietkau 2021-05-07 1254
d80e52c7b6c4d3 Felix Fietkau 2020-08-23 1255 void mt7915_tx_complete_skb(struct mt76_dev *mdev, struct mt76_queue_entry *e)
e57b7901469fc0 Ryder Lee 2020-04-25 1256 {
e57b7901469fc0 Ryder Lee 2020-04-25 @1257 struct mt7915_dev *dev;
e57b7901469fc0 Ryder Lee 2020-04-25 1258
e57b7901469fc0 Ryder Lee 2020-04-25 1259 if (!e->txwi) {
e57b7901469fc0 Ryder Lee 2020-04-25 1260 dev_kfree_skb_any(e->skb);
e57b7901469fc0 Ryder Lee 2020-04-25 1261 return;
e57b7901469fc0 Ryder Lee 2020-04-25 1262 }
e57b7901469fc0 Ryder Lee 2020-04-25 1263
e57b7901469fc0 Ryder Lee 2020-04-25 1264 dev = container_of(mdev, struct mt7915_dev, mt76);
e57b7901469fc0 Ryder Lee 2020-04-25 1265
e57b7901469fc0 Ryder Lee 2020-04-25 1266 /* error path */
e57b7901469fc0 Ryder Lee 2020-04-25 1267 if (e->skb == DMA_DUMMY_DATA) {
e57b7901469fc0 Ryder Lee 2020-04-25 1268 struct mt76_txwi_cache *t;
e57b7901469fc0 Ryder Lee 2020-04-25 1269 struct mt7915_txp *txp;
e57b7901469fc0 Ryder Lee 2020-04-25 1270
e57b7901469fc0 Ryder Lee 2020-04-25 1271 txp = mt7915_txwi_to_txp(mdev, e->txwi);
d089692bc7938a Lorenzo Bianconi 2021-04-20 1272 t = mt76_token_put(mdev, le16_to_cpu(txp->token));
e57b7901469fc0 Ryder Lee 2020-04-25 1273 e->skb = t ? t->skb : NULL;
e57b7901469fc0 Ryder Lee 2020-04-25 1274 }
e57b7901469fc0 Ryder Lee 2020-04-25 1275
223fd4f8430810 Felix Fietkau 2021-05-07 1276 if (e->skb)
223fd4f8430810 Felix Fietkau 2021-05-07 1277 mt76_tx_complete_skb(mdev, e->wcid, e->skb);
e57b7901469fc0 Ryder Lee 2020-04-25 1278 }
e57b7901469fc0 Ryder Lee 2020-04-25 1279
:::::: The code at line 1169 was first introduced by commit
:::::: e57b7901469fc0b021930b83a8094baaf3d81b09 mt76: add mac80211 driver for MT7915 PCIe-based chipsets
:::::: TO: Ryder Lee <ryder.lee@mediatek.com>
:::::: CC: Felix Fietkau <nbd@nbd.name>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 47089 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-06-19 12:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-19 12:11 [nbd168-wireless:mt76 10/100] drivers/net/wireless/mediatek/mt76/mt7915/mac.c:1169:6: warning: variable 'stat' set but not used kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.