Sorry for the merge damage. I was (and still am) trying to deal with
some merge conflicts when pulling the mac80211 tree, FWIW...
On Thu, Dec 03, 2015 at 08:54:16AM +0200, Kalle Valo wrote:
> Hi John,
>
> with latest wireless-testing[1] I noticed that I cannot start AP mode
> anymore with ath10k:
>
> nl80211: Subscribe to mgmt frames with AP handle 0x9e5b410
> nl80211: Register frame type=0xb0 nl_handle=0x9e5b410 match=
> nl80211: Register frame command failed (type=176): ret=-95 (Operation not
> supported)
> nl80211: Register frame match - hexdump(len=0): [NULL]
> nl80211: Could not configure driver mode
>
> With help of Johannes we find out that there are odd changes in
> wireless-testing[2]. Reverting the change in cfg.c fixed my regression,
> but I don't know really know what has happened.
>
> Kalle
>
> [1] To be exact I was using ath.git master branch but that's just
> wireless-testing plus latest ath patches so should affect here.
>
> [2] $ git diff master-2015-11-27..master-2015-11-30 -- net/mac80211
> diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
> index 2d1c4c35186d..b3a708366a5a 100644
> --- a/net/mac80211/cfg.c
> +++ b/net/mac80211/cfg.c
> @@ -3384,8 +3384,6 @@ const struct cfg80211_ops mac80211_config_ops = {
> .set_bitrate_mask = ieee80211_set_bitrate_mask,
> .remain_on_channel = ieee80211_remain_on_channel,
> .cancel_remain_on_channel = ieee80211_cancel_remain_on_channel,
> - .mgmt_tx = ieee80211_mgmt_tx,
> - .mgmt_tx_cancel_wait = ieee80211_mgmt_tx_cancel_wait,
> .set_cqm_rssi_config = ieee80211_set_cqm_rssi_config,
> .mgmt_frame_register = ieee80211_mgmt_frame_register,
> .set_antenna = ieee80211_set_antenna,
> diff --git a/net/mac80211/offchannel.c b/net/mac80211/offchannel.c
> index ce8e1a6c7281..cfd3356e26fd 100644
> --- a/net/mac80211/offchannel.c
> +++ b/net/mac80211/offchannel.c
> @@ -916,6 +916,13 @@ int ieee80211_mgmt_tx(struct wiphy *wiphy, struct
> wireless_dev *wdev,
> kfree_skb(skb);
> goto out_unlock;
> }
> + } else {
> + /* Assign a dummy non-zero cookie, it's not sent to
> + * userspace in this case but we rely on its value
> + * internally in the need_offchan case to distinguish
> + * mgmt-tx from remain-on-channel.
> + */
> + *cookie = 0xffffffff;
> }
>
> if (!need_offchan) {
>
>
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html