Search Linux Wireless

Re: [PATCH] mac80211: fill start-sequence-number for BA session start

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 6, 2008 at 10:45 PM, Johannes Berg
<johannes@xxxxxxxxxxxxxxxx> wrote:
> Otherwise, drivers are required to keep track of the sequence numbers
> themselves, and they really shouldn't be since we already do it for
> them. I'll fix the race once we figure out how this code should work
> at all, it's currently disabled.
>
> Signed-off-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>

Finally I know why nothing works in iwlwifi. This is most crucial
point of correct driver behavior.
There is direct  mapping between hw queue indexes and sequence numbers....
This is bad.

> ---
>  net/mac80211/ht.c |    5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> --- everything.orig/net/mac80211/ht.c   2008-08-06 21:40:24.000000000 +0200
> +++ everything/net/mac80211/ht.c        2008-08-06 21:43:42.000000000 +0200
> @@ -78,7 +78,7 @@ int ieee80211_start_tx_ba_session(struct
>        struct ieee80211_local *local = hw_to_local(hw);
>        struct sta_info *sta;
>        struct ieee80211_sub_if_data *sdata;
> -       u16 start_seq_num = 0;
> +       u16 start_seq_num;
>        u8 *state;
>        int ret;
>        DECLARE_MAC_BUF(mac);
> @@ -158,6 +158,9 @@ int ieee80211_start_tx_ba_session(struct
>         * call back right away, it must see that the flow has begun */
>        *state |= HT_ADDBA_REQUESTED_MSK;
>
> +       /* This is slightly racy because the queue isn't stopped */
> +       start_seq_num = sta->tid_seq[tid];
> +
>        if (local->ops->ampdu_action)
>                ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_TX_START,
>                                                ra, tid, &start_seq_num);
>
>
> --
> 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
>
--
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux