---
name: "struct_sta_ampdu_mlme"
section: "9"
platform: "linux"
package: "linux-manual-3.16"
version: "3.16.56-1+deb8u1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/struct_sta_ampdu_mlme"
---

# struct\_sta\_ampdu\_mlme(9)

STA aggregation information.

## NAME

struct\_sta\_ampdu\_mlme - STA aggregation information.

## SYNOPSIS

```
struct sta_ampdu_mlme {
  struct mutex mtx;
  struct tid_ampdu_rx __rcu * tid_rx[IEEE80211_NUM_TIDS];
  unsigned long tid_rx_timer_expired[BITS_TO_LONGS(IEEE80211_NUM_TIDS)];
  unsigned long tid_rx_stop_requested[BITS_TO_LONGS(IEEE80211_NUM_TIDS)];
  struct work_struct work;
  struct tid_ampdu_tx __rcu * tid_tx[IEEE80211_NUM_TIDS];
  struct tid_ampdu_tx * tid_start_tx[IEEE80211_NUM_TIDS];
  unsigned long last_addba_req_time[IEEE80211_NUM_TIDS];
  u8 addba_req_num[IEEE80211_NUM_TIDS];
  u8 dialog_token_allocator;
};
```

## MEMBERS

mtx

mutex to protect all TX data (except non-NULL assignments to tid\_tx\[idx\], which are protected by the sta spinlock) tid\_start\_tx is also protected by sta-\>lock.

tid\_rx\[IEEE80211\_NUM\_TIDS\]

aggregation info for Rx per TID -- RCU protected

tid\_rx\_timer\_expired\[BITS\_TO\_LONGS(IEEE80211\_NUM\_TIDS)\]

bitmap indicating on which TIDs the RX timer expired until the work for it runs

tid\_rx\_stop\_requested\[BITS\_TO\_LONGS(IEEE80211\_NUM\_TIDS)\]

bitmap indicating which BA sessions per TID the driver requested to close until the work for it runs

work

work struct for starting/stopping aggregation

tid\_tx\[IEEE80211\_NUM\_TIDS\]

aggregation info for Tx per TID

tid\_start\_tx\[IEEE80211\_NUM\_TIDS\]

sessions where start was requested

last\_addba\_req\_time\[IEEE80211\_NUM\_TIDS\]

timestamp of the last addBA request.

addba\_req\_num\[IEEE80211\_NUM\_TIDS\]

number of times addBA request has been sent.

dialog\_token\_allocator

dialog token enumerator for each new session;

## AUTHOR

**Johannes Berg** \<johannes@sipsolutions.net\>

Author.

## COPYRIGHT
