mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
mac80211: move TX station pointer and restructure TX
Remove the control.sta pointer from ieee80211_tx_info to free up sufficient space in the TX skb control buffer for the upcoming Transmit Power Control (TPC). Instead, the pointer is now on the stack in a new control struct that is passed as a function parameter to the drivers' tx method. Signed-off-by: Thomas Huehn <[email protected]> Signed-off-by: Alina Friedrichsen <[email protected]> Signed-off-by: Felix Fietkau <[email protected]> [reworded commit message] Signed-off-by: Johannes Berg <[email protected]>
This commit is contained in:
parent
ab09587740
commit
36323f817a
53 changed files with 232 additions and 132 deletions
|
|
@ -22,9 +22,11 @@ get_bss_sdata(struct ieee80211_sub_if_data *sdata)
|
|||
return sdata;
|
||||
}
|
||||
|
||||
static inline void drv_tx(struct ieee80211_local *local, struct sk_buff *skb)
|
||||
static inline void drv_tx(struct ieee80211_local *local,
|
||||
struct ieee80211_tx_control *control,
|
||||
struct sk_buff *skb)
|
||||
{
|
||||
local->ops->tx(&local->hw, skb);
|
||||
local->ops->tx(&local->hw, control, skb);
|
||||
}
|
||||
|
||||
static inline void drv_get_et_strings(struct ieee80211_sub_if_data *sdata,
|
||||
|
|
|
|||
|
|
@ -1204,6 +1204,7 @@ static bool ieee80211_tx_frags(struct ieee80211_local *local,
|
|||
struct sk_buff_head *skbs,
|
||||
bool txpending)
|
||||
{
|
||||
struct ieee80211_tx_control control;
|
||||
struct sk_buff *skb, *tmp;
|
||||
unsigned long flags;
|
||||
|
||||
|
|
@ -1240,10 +1241,10 @@ static bool ieee80211_tx_frags(struct ieee80211_local *local,
|
|||
spin_unlock_irqrestore(&local->queue_stop_reason_lock, flags);
|
||||
|
||||
info->control.vif = vif;
|
||||
info->control.sta = sta;
|
||||
control.sta = sta;
|
||||
|
||||
__skb_unlink(skb, skbs);
|
||||
drv_tx(local, skb);
|
||||
drv_tx(local, &control, skb);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
Loading…
Reference in a new issue