On Wed, 2013-06-05 at 17:09 +0200, Antonio Quartulli wrote: > + if (need_offchan && !chan) > + return -EINVAL; > @@ -2847,10 +2853,14 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, > rcu_read_lock(); > chanctx_conf = rcu_dereference(sdata->vif.chanctx_conf); > > - if (chanctx_conf) > - need_offchan = chan != chanctx_conf->def.chan; > - else > + if (chanctx_conf) { > + need_offchan = chan && (chan != chanctx_conf->def.chan); > + } else if (!chan) { > + ret = -EINVAL; > + goto out_unlock; > + } else { > need_offchan = true; > + } > rcu_read_unlock(); It seems this would be clearer? http://p.sipsolutions.net/b8a03c85f0e8b89f.txt johannes -- 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