- To: "Thomas Huehn" <thomas@xxxxxxxxxxxxxxxxxxxxxxx>
- Subject: Re: [PATCH 2/2] mac80211: Remove control.sta from struct ieee80211_tx_info and restructure tx-path
- From: "Arend van Spriel" <arend@xxxxxxxxxxxx>
- Date: Sat, 14 Jul 2012 12:10:08 +0200
- Cc: linville@xxxxxxxxxxxxx, linux-wireless@xxxxxxxxxxxxxxx, ath9k-devel@xxxxxxxxxxxxxxxx, ath5k-devel@xxxxxxxxxxxxxxxx, ilw@xxxxxxxxxxxxxxx, users@xxxxxxxxxxxxxxxxxxxxxxx, b43-dev@xxxxxxxxxxxxxxxxxxx, brcm80211-dev-list@xxxxxxxxxxxx, chunkeey@xxxxxxxxxxxxxx, buytenh@xxxxxxxxxxxxxx, dsd@xxxxxxxxxx, coelho@xxxxxx, johannes.berg@xxxxxxxxx
- In-reply-to: <1342205545-45382-3-git-send-email-thomas@net.t-labs.tu-berlin.de>
- User-agent: Mozilla/5.0 (X11; Linux i686; rv:13.0) Gecko/20120615 Thunderbird/13.0.1
On 07/13/2012 08:52 PM, Thomas Huehn wrote:
> The pointer control.sta is removed from ieee80211_tx_info to free up sufficient
> memory in SKB_CB on the tx-path to enable new annotations per data packet e.g.
> support of upcoming Transmit Power Control (TPC).
> Now the control.sta pointer is put on the stack where it is passed as function
> parameter to the .tx equivalent (ieee80211_ops) of each affected wireless
> driver. Therefore a new structure ieee80211_tx_control is added to mac80211.h
> which holds the sta structure instead.
>
> ---
> .../net/wireless/brcm80211/brcmsmac/mac80211_if.c | 6 +++--
>
> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> index 9e79d47..a7be68d 100644
> --- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> +++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> @@ -264,7 +264,9 @@ static void brcms_set_basic_rate(struct brcm_rateset *rs, u16 rate, bool is_br)
> }
> }
>
> -static void brcms_ops_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
> +static void brcms_ops_tx(struct ieee80211_hw *hw,
> + struct ieee80211_tx_control *control,
> + struct sk_buff *skb)
Fix indent here (if it is not a mailer issue).
> {
> struct brcms_info *wl = hw->priv;
> struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb);
> @@ -276,7 +278,7 @@ static void brcms_ops_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
> goto done;
> }
> brcms_c_sendpkt_mac80211(wl->wlc, skb, hw);
> - tx_info->rate_driver_data[0] = tx_info->control.sta;
> + tx_info->rate_driver_data[0] = control->sta;
> done:
> spin_unlock_bh(&wl->lock);
> }
Gr. AvS
--
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
[Linux Kernel]
[Linux Bluetooth]
[Linux Netdev]
[Kernel Newbies]
[Share Photos]
[IDE]
[Security]
[Git]
[Netfilter]
[Bugtraq]
[Photo]
[Yosemite]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Linux ATA RAID]
[Samba]
[Video 4 Linux]
[Device Mapper]
[Linux Resources]
[Free Dating]
[M2M Wireless]