diff options
Diffstat (limited to 'net/wireless/util.c')
-rw-r--r-- | net/wireless/util.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/net/wireless/util.c b/net/wireless/util.c index 957f25621617..6cba00173a2f 100644 --- a/net/wireless/util.c +++ b/net/wireless/util.c | |||
@@ -946,13 +946,6 @@ int cfg80211_can_change_interface(struct cfg80211_registered_device *rdev, | |||
946 | if (rdev->wiphy.software_iftypes & BIT(iftype)) | 946 | if (rdev->wiphy.software_iftypes & BIT(iftype)) |
947 | return 0; | 947 | return 0; |
948 | 948 | ||
949 | /* | ||
950 | * Drivers will gradually all set this flag, until all | ||
951 | * have it we only enforce for those that set it. | ||
952 | */ | ||
953 | if (!(rdev->wiphy.flags & WIPHY_FLAG_ENFORCE_COMBINATIONS)) | ||
954 | return 0; | ||
955 | |||
956 | memset(num, 0, sizeof(num)); | 949 | memset(num, 0, sizeof(num)); |
957 | 950 | ||
958 | num[iftype] = 1; | 951 | num[iftype] = 1; |
@@ -972,6 +965,9 @@ int cfg80211_can_change_interface(struct cfg80211_registered_device *rdev, | |||
972 | } | 965 | } |
973 | mutex_unlock(&rdev->devlist_mtx); | 966 | mutex_unlock(&rdev->devlist_mtx); |
974 | 967 | ||
968 | if (total == 1) | ||
969 | return 0; | ||
970 | |||
975 | for (i = 0; i < rdev->wiphy.n_iface_combinations; i++) { | 971 | for (i = 0; i < rdev->wiphy.n_iface_combinations; i++) { |
976 | const struct ieee80211_iface_combination *c; | 972 | const struct ieee80211_iface_combination *c; |
977 | struct ieee80211_iface_limit *limits; | 973 | struct ieee80211_iface_limit *limits; |