Three small fixes:

* initialize some data to avoid using stack garbage
  * fix 6 GHz channel selection in mac80211
  * correctly restart monitor mode interfaces in mac80211
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEH1e1rEeCd0AIMq6MB8qZga/fl8QFAl/KKSQACgkQB8qZga/f
 l8QtAg/+PvDEET4W0baM3cZKHhxhmPebPUVb4FMMz3U3fqjvek5geUQvu9DhdLyr
 l1/Mf4lxhvhAvPVjm0fAYiTH9DYEEc84nX/0KUOWcv/HHpAyqrb8Swm/yPbSilC4
 b4UyePaVGQzZcMF/JmKKhcVrI6BPpCfefnKNvthe2XIPrPfVvy5Hsu7hEmwGZSmL
 s0rCabj9wGYVqu4bPYL2KCbPM5MgRd/TegMoo41gR0DZPPcE6TKTCFvPgo1eK9bV
 8NePxISBeYDzV2lj7yQNf8YE7Oidiq+3gWCMoo9fpHcN0pgK5H4GT0XP69ZK4p4l
 o9+lO/0ly78g63X7EZuleKil6FXM43iLFi8SsywfGXkwaDcEeDOMA68Pv0G1iR8s
 s2dX+jodF5pg7TCdZiXouWpRxzPiOZqxEX1RHPMR1ZXGocVu0zFtKTM0ZI8cnaww
 KpKZ71M347b8BLzhXchAH3r9q2T6ogbTm1+/2Z+o/6wOTYzclH/9Fv8YqMBeqHtM
 CrYjlh7UsAybpqWqJGr8cPxnzR+MtkaNuhgXy7rEkjvzHspC9mm2wizVsVAWNll2
 Ba4YrQw1tIJdSnapW8hkjwecFvJmEp8BND8cl8qYHlxXqELHDroaaHJFb7XiQUvt
 EtGT/ezCYqTWPY8SRfeT+dhXyehPgYvY4UGB0o0dnIYi6aqocB8=
 =7wn+
 -----END PGP SIGNATURE-----

Merge tag 'mac80211-for-net-2020-12-04' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211

Johannes Berg says:

====================
Three small fixes:
 * initialize some data to avoid using stack garbage
 * fix 6 GHz channel selection in mac80211
 * correctly restart monitor mode interfaces in mac80211

* tag 'mac80211-for-net-2020-12-04' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211:
  mac80211: set SDATA_STATE_RUNNING for monitor interfaces
  cfg80211: initialize rekey_data
  mac80211: fix return value of ieee80211_chandef_he_6ghz_oper
====================

Link: https://lore.kernel.org/r/20201204122017.118099-1-johannes@sipsolutions.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Jakub Kicinski 2020-12-04 11:26:28 -08:00
commit a1cdfbe8f0
3 changed files with 4 additions and 2 deletions

View File

@ -948,6 +948,8 @@ int ieee80211_add_virtual_monitor(struct ieee80211_local *local)
return ret;
}
set_bit(SDATA_STATE_RUNNING, &sdata->state);
ret = ieee80211_check_queues(sdata, NL80211_IFTYPE_MONITOR);
if (ret) {
kfree(sdata);

View File

@ -3455,7 +3455,7 @@ bool ieee80211_chandef_he_6ghz_oper(struct ieee80211_sub_if_data *sdata,
*chandef = he_chandef;
return false;
return true;
}
bool ieee80211_chandef_s1g_oper(const struct ieee80211_s1g_oper_ie *oper,

View File

@ -12634,7 +12634,7 @@ static int nl80211_set_rekey_data(struct sk_buff *skb, struct genl_info *info)
struct net_device *dev = info->user_ptr[1];
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct nlattr *tb[NUM_NL80211_REKEY_DATA];
struct cfg80211_gtk_rekey_data rekey_data;
struct cfg80211_gtk_rekey_data rekey_data = {};
int err;
if (!info->attrs[NL80211_ATTR_REKEY_DATA])