diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-05-03 04:01:03 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-05-16 16:38:05 -0400 |
commit | f6b3d85f7f6d66f890862d763b2ed092c5dd4322 (patch) | |
tree | 3e6ca47a09a6ee3418aa2ab14d14d3534c2b9279 /include/net/mac80211.h | |
parent | 3670946fe2e942bcb09ec9bbc587bf305f9f97da (diff) |
mac80211: fix spurious RCU warning and update documentation
Document rx vs tx status concurrency requirements.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net/mac80211.h')
-rw-r--r-- | include/net/mac80211.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 04c2d4670dc6..885898a40d13 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -3043,7 +3043,8 @@ void ieee80211_napi_complete(struct ieee80211_hw *hw); | |||
3043 | * This function may not be called in IRQ context. Calls to this function | 3043 | * This function may not be called in IRQ context. Calls to this function |
3044 | * for a single hardware must be synchronized against each other. Calls to | 3044 | * for a single hardware must be synchronized against each other. Calls to |
3045 | * this function, ieee80211_rx_ni() and ieee80211_rx_irqsafe() may not be | 3045 | * this function, ieee80211_rx_ni() and ieee80211_rx_irqsafe() may not be |
3046 | * mixed for a single hardware. | 3046 | * mixed for a single hardware. Must not run concurrently with |
3047 | * ieee80211_tx_status() or ieee80211_tx_status_ni(). | ||
3047 | * | 3048 | * |
3048 | * In process context use instead ieee80211_rx_ni(). | 3049 | * In process context use instead ieee80211_rx_ni(). |
3049 | * | 3050 | * |
@@ -3059,7 +3060,8 @@ void ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb); | |||
3059 | * (internally defers to a tasklet.) | 3060 | * (internally defers to a tasklet.) |
3060 | * | 3061 | * |
3061 | * Calls to this function, ieee80211_rx() or ieee80211_rx_ni() may not | 3062 | * Calls to this function, ieee80211_rx() or ieee80211_rx_ni() may not |
3062 | * be mixed for a single hardware. | 3063 | * be mixed for a single hardware.Must not run concurrently with |
3064 | * ieee80211_tx_status() or ieee80211_tx_status_ni(). | ||
3063 | * | 3065 | * |
3064 | * @hw: the hardware this frame came in on | 3066 | * @hw: the hardware this frame came in on |
3065 | * @skb: the buffer to receive, owned by mac80211 after this call | 3067 | * @skb: the buffer to receive, owned by mac80211 after this call |
@@ -3073,7 +3075,8 @@ void ieee80211_rx_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb); | |||
3073 | * (internally disables bottom halves). | 3075 | * (internally disables bottom halves). |
3074 | * | 3076 | * |
3075 | * Calls to this function, ieee80211_rx() and ieee80211_rx_irqsafe() may | 3077 | * Calls to this function, ieee80211_rx() and ieee80211_rx_irqsafe() may |
3076 | * not be mixed for a single hardware. | 3078 | * not be mixed for a single hardware. Must not run concurrently with |
3079 | * ieee80211_tx_status() or ieee80211_tx_status_ni(). | ||
3077 | * | 3080 | * |
3078 | * @hw: the hardware this frame came in on | 3081 | * @hw: the hardware this frame came in on |
3079 | * @skb: the buffer to receive, owned by mac80211 after this call | 3082 | * @skb: the buffer to receive, owned by mac80211 after this call |
@@ -3196,7 +3199,8 @@ void ieee80211_get_tx_rates(struct ieee80211_vif *vif, | |||
3196 | * This function may not be called in IRQ context. Calls to this function | 3199 | * This function may not be called in IRQ context. Calls to this function |
3197 | * for a single hardware must be synchronized against each other. Calls | 3200 | * for a single hardware must be synchronized against each other. Calls |
3198 | * to this function, ieee80211_tx_status_ni() and ieee80211_tx_status_irqsafe() | 3201 | * to this function, ieee80211_tx_status_ni() and ieee80211_tx_status_irqsafe() |
3199 | * may not be mixed for a single hardware. | 3202 | * may not be mixed for a single hardware. Must not run concurrently with |
3203 | * ieee80211_rx() or ieee80211_rx_ni(). | ||
3200 | * | 3204 | * |
3201 | * @hw: the hardware the frame was transmitted by | 3205 | * @hw: the hardware the frame was transmitted by |
3202 | * @skb: the frame that was transmitted, owned by mac80211 after this call | 3206 | * @skb: the frame that was transmitted, owned by mac80211 after this call |