1STRUCT TID_AMPDU_RX(9)             Internals            STRUCT TID_AMPDU_RX(9)
2
3
4

NAME

6       struct_tid_ampdu_rx - TID aggregation information (Rx).
7

SYNOPSIS

9       struct tid_ampdu_rx {
10         struct rcu_head rcu_head;
11         spinlock_t reorder_lock;
12         u64 reorder_buf_filtered;
13         struct sk_buff_head * reorder_buf;
14         unsigned long * reorder_time;
15         struct timer_list session_timer;
16         struct timer_list reorder_timer;
17         unsigned long last_rx;
18         u16 head_seq_num;
19         u16 stored_mpdu_num;
20         u16 ssn;
21         u16 buf_size;
22         u16 timeout;
23         u8 auto_seq:1;
24         u8 removed:1;
25         u8 started:1;
26       };
27

MEMBERS

29       rcu_head
30           RCU head used for freeing this struct
31
32       reorder_lock
33           serializes access to reorder buffer, see below.
34
35       reorder_buf_filtered
36           bitmap indicating where there are filtered frames in the reorder
37           buffer that should be ignored when releasing frames
38
39       reorder_buf
40           buffer to reorder incoming aggregated MPDUs. An MPDU may be an
41           A-MSDU with individually reported subframes.
42
43       reorder_time
44           jiffies when skb was added
45
46       session_timer
47           check if peer keeps Tx-ing on the TID (by timeout value)
48
49       reorder_timer
50           releases expired frames from the reorder buffer.
51
52       last_rx
53           jiffies of last rx activity
54
55       head_seq_num
56           head sequence number in reordering buffer.
57
58       stored_mpdu_num
59           number of MPDUs in reordering buffer
60
61       ssn
62           Starting Sequence Number expected to be aggregated.
63
64       buf_size
65           buffer size for incoming A-MPDUs
66
67       timeout
68           reset timer value (in TUs).
69
70       auto_seq
71           used for offloaded BA sessions to automatically pick head_seq_and
72           and ssn.
73
74       removed
75           this session is removed (but might have been found due to RCU)
76
77       started
78           this session has started (head ssn or higher was received)
79

DESCRIPTION

81       This structure's lifetime is managed by RCU, assignments to the array
82       holding it must hold the aggregation mutex.
83
84       The reorder_lock is used to protect the members of this struct, except
85       for timeout, buf_size and dialog_token, which are constant across the
86       lifetime of the struct (the dialog token being used only for
87       debugging).
88

AUTHOR

90       Johannes Berg <johannes@sipsolutions.net>
91           Author.
92
94Kernel Hackers Manual 3.10         June 2019            STRUCT TID_AMPDU_RX(9)
Impressum