On Thu, 2013-01-10 at 10:43 +0200, Vladimir Kondratiev wrote: > Hi, > > There are 2 similar operations in the struct cfg80211_ops: > remain_on_channel() and mgmt_tx(). Actually, mgmt_tx() when called for > off-channel operation, is the same as remain_on_channel() except it > transmits frame at the beginning. > > What I am interesting about, is notifications to cfg80211. For > remain_on_channel(), there are 2: cfg80211_ready_on_channel() when > channel tuned, and cfg80211_remain_on_channel_expired() when tuned off > requested channel. In contrast, if mgmt_tx() called for off-channel > with duration, 2 above notifications are not used. Instead, only > cfg80211_mgmt_tx_status() called after tx. > > My question is why don't mgmt_tx() call cfg80211_ready_on_channel() and > cfg80211_remain_on_channel_expired() ? It seems logical to notify about > off-channel status. Otherwise, how can upper layers know when off-channel > started/finished in context of mgmt_tx()? If all they care about is transmitting a frame, why would they want to know? 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