aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/mac80211.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net/mac80211.h')
-rw-r--r--include/net/mac80211.h28
1 files changed, 24 insertions, 4 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index eaa4affd40c..e411cf87fb4 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -2055,8 +2055,8 @@ static inline void ieee80211_rx_ni(struct ieee80211_hw *hw,
2055 * 2055 *
2056 * This function may not be called in IRQ context. Calls to this function 2056 * This function may not be called in IRQ context. Calls to this function
2057 * for a single hardware must be synchronized against each other. Calls 2057 * for a single hardware must be synchronized against each other. Calls
2058 * to this function and ieee80211_tx_status_irqsafe() may not be mixed 2058 * to this function, ieee80211_tx_status_ni() and ieee80211_tx_status_irqsafe()
2059 * for a single hardware. 2059 * may not be mixed for a single hardware.
2060 * 2060 *
2061 * @hw: the hardware the frame was transmitted by 2061 * @hw: the hardware the frame was transmitted by
2062 * @skb: the frame that was transmitted, owned by mac80211 after this call 2062 * @skb: the frame that was transmitted, owned by mac80211 after this call
@@ -2065,13 +2065,33 @@ void ieee80211_tx_status(struct ieee80211_hw *hw,
2065 struct sk_buff *skb); 2065 struct sk_buff *skb);
2066 2066
2067/** 2067/**
2068 * ieee80211_tx_status_ni - transmit status callback (in process context)
2069 *
2070 * Like ieee80211_tx_status() but can be called in process context.
2071 *
2072 * Calls to this function, ieee80211_tx_status() and
2073 * ieee80211_tx_status_irqsafe() may not be mixed
2074 * for a single hardware.
2075 *
2076 * @hw: the hardware the frame was transmitted by
2077 * @skb: the frame that was transmitted, owned by mac80211 after this call
2078 */
2079static inline void ieee80211_tx_status_ni(struct ieee80211_hw *hw,
2080 struct sk_buff *skb)
2081{
2082 local_bh_disable();
2083 ieee80211_tx_status(hw, skb);
2084 local_bh_enable();
2085}
2086
2087/**
2068 * ieee80211_tx_status_irqsafe - IRQ-safe transmit status callback 2088 * ieee80211_tx_status_irqsafe - IRQ-safe transmit status callback
2069 * 2089 *
2070 * Like ieee80211_tx_status() but can be called in IRQ context 2090 * Like ieee80211_tx_status() but can be called in IRQ context
2071 * (internally defers to a tasklet.) 2091 * (internally defers to a tasklet.)
2072 * 2092 *
2073 * Calls to this function and ieee80211_tx_status() may not be mixed for a 2093 * Calls to this function, ieee80211_tx_status() and
2074 * single hardware. 2094 * ieee80211_tx_status_ni() may not be mixed for a single hardware.
2075 * 2095 *
2076 * @hw: the hardware the frame was transmitted by 2096 * @hw: the hardware the frame was transmitted by
2077 * @skb: the frame that was transmitted, owned by mac80211 after this call 2097 * @skb: the frame that was transmitted, owned by mac80211 after this call