cfg80211/mac80211: improve ad-hoc multicast rate handling
- store the multicast rate as an index instead of the rate value
(reduces cpu overhead in a hotpath)
- validate the rate values (must match a bitrate in at least one sband)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 91f0995..dd4c43f 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -923,7 +923,7 @@
* @privacy: this is a protected network, keys will be configured
* after joining
* @basic_rates: bitmap of basic rates to use when creating the IBSS
- * @mcast_rate: multicast tx rate (in 100 kbps)
+ * @mcast_rate: per-band multicast rate index + 1 (0: disabled)
*/
struct cfg80211_ibss_params {
u8 *ssid;
@@ -935,7 +935,7 @@
u32 basic_rates;
bool channel_fixed;
bool privacy;
- int mcast_rate;
+ int mcast_rate[IEEE80211_NUM_BANDS];
};
/**