On Mon, Dec 10, 2012 at 9:06 AM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > On Thu, 2012-12-06 at 17:53 +0100, Johannes Berg wrote: > >> +bool reg_check_bandwidth(struct wiphy *wiphy, >> + u32 center_freq_khz, u32 bw_khz) >> +{ >> + const struct ieee80211_reg_rule *reg_rule; >> + >> + /* >> + * This interpretation is a bit of a strange quirk in the regulatory >> + * rules definitions that we have today: each 20 MHz channel must fit >> + * entirely into a single regulatory range, but if this range forbids >> + * using more than 20 MHz then it forbids even using a small part of >> + * this for the wider channel. >> + */ >> + >> + reg_rule = freq_reg_info(wiphy, center_freq_khz); >> + if (!IS_ERR(reg_rule)) >> + return reg_rule->freq_range.max_bandwidth_khz >= bw_khz; > > This needs rcu_read_lock() obviously... Fixed in my version in the wip > branch. Looks good, the get_wiphy_regdom() change above seemed like it'd belong on a separate patch though. Luis -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html