From 68406a9807e4db562a157df9a958b3b6e2cedb38 Mon Sep 17 00:00:00 2001 From: James Prestwood Date: Tue, 11 Dec 2018 16:52:14 -0800 Subject: [PATCH] mac80211_hwsim: fix overwriting of if_combination Moved setting if_combination.num_different_channels/radar_detect_widths into an else after use_chanctx. In the case of use_chanctx, these two settings were getting overwritten. Signed-off-by: James Prestwood Signed-off-by: Johannes Berg --- drivers/net/wireless/mac80211_hwsim.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index 2a5a133..e4db8e2 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c @@ -2751,17 +2751,18 @@ static int mac80211_hwsim_new_radio(struct genl_info *info, hw->wiphy->max_remain_on_channel_duration = 1000; data->if_combination.radar_detect_widths = 0; data->if_combination.num_different_channels = data->channels; - } - - data->if_combination.n_limits = n_limits; - data->if_combination.max_interfaces = 2048; - data->if_combination.num_different_channels = 1; - data->if_combination.radar_detect_widths = + } else { + data->if_combination.num_different_channels = 1; + data->if_combination.radar_detect_widths = BIT(NL80211_CHAN_WIDTH_20_NOHT) | BIT(NL80211_CHAN_WIDTH_20) | BIT(NL80211_CHAN_WIDTH_40) | BIT(NL80211_CHAN_WIDTH_80) | BIT(NL80211_CHAN_WIDTH_160); + } + + data->if_combination.n_limits = n_limits; + data->if_combination.max_interfaces = 2048; data->if_combination.limits = data->if_limits; hw->wiphy->iface_combinations = &data->if_combination; -- 2.7.4