1. NAME

struct_tid_ampdu_rx - TID aggregation information (Rx).

2. SYNOPSIS



 
Sélectionnez
struct tid_ampdu_rx {
  struct rcu_head rcu_head;
  spinlock_t reorder_lock;
  struct sk_buff ** reorder_buf;
  unsigned long * reorder_time;
  struct timer_list session_timer;
  struct timer_list reorder_timer;
  unsigned long last_rx;
  u16 head_seq_num;
  u16 stored_mpdu_num;
  u16 ssn;
  u16 buf_size;
  u16 timeout;
  u8 dialog_token;
};

3. MEMBERS

rcu_head
    RCU head used for freeing this struct

reorder_lock
    serializes access to reorder buffer, see below.

reorder_buf
    buffer to reorder incoming aggregated MPDUs

reorder_time
    jiffies when skb was added

session_timer
    check if peer keeps Tx-ing on the TID (by timeout value)

reorder_timer
    releases expired frames from the reorder buffer.

last_rx
    jiffies of last rx activity

head_seq_num
    head sequence number in reordering buffer.

stored_mpdu_num
    number of MPDUs in reordering buffer

ssn
    Starting Sequence Number expected to be aggregated.

buf_size
    buffer size for incoming A-MPDUs

timeout
    reset timer value (in TUs).

dialog_token
    dialog token for aggregation session

4. DESCRIPTION

This structureAqs lifetime is managed by RCU, assignments to the array holding it must hold the aggregation mutex.

The reorder_lock is used to protect the members of this struct, except for timeout, buf_size and dialog_token, which are constant across the lifetime of the struct (the dialog token being used only for debugging).

5. AUTHOR

Johannes Berg <>
    Author.

6. COPYRIGHT