04a5118103f219c9b4d737c27cfc80f8ee121e2a
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / 020-05-rt2x00-call-entry-directly-in-rt2x00_dump_frame.patch
1 From 2ceb813798e1fd33e71a574771828c0f298e077b Mon Sep 17 00:00:00 2001
2 From: Stanislaw Gruszka <sgruszka@redhat.com>
3 Date: Wed, 8 Feb 2017 13:51:30 +0100
4 Subject: [PATCH 05/19] rt2x00: call entry directly in rt2x00_dump_frame
5
6 Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
7 Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
8 ---
9 drivers/net/wireless/ralink/rt2x00/rt2400pci.c | 2 +-
10 drivers/net/wireless/ralink/rt2x00/rt2500pci.c | 2 +-
11 drivers/net/wireless/ralink/rt2x00/rt2500usb.c | 2 +-
12 drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 +-
13 drivers/net/wireless/ralink/rt2x00/rt2x00.h | 4 ++--
14 drivers/net/wireless/ralink/rt2x00/rt2x00debug.c | 7 ++++---
15 drivers/net/wireless/ralink/rt2x00/rt2x00dev.c | 4 ++--
16 drivers/net/wireless/ralink/rt2x00/rt2x00queue.c | 2 +-
17 drivers/net/wireless/ralink/rt2x00/rt61pci.c | 2 +-
18 drivers/net/wireless/ralink/rt2x00/rt73usb.c | 2 +-
19 10 files changed, 15 insertions(+), 14 deletions(-)
20
21 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c b/drivers/net/wireless/ralink/rt2x00/rt2400pci.c
22 index 085c5b423bdf..19874439ac40 100644
23 --- a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c
24 +++ b/drivers/net/wireless/ralink/rt2x00/rt2400pci.c
25 @@ -1200,7 +1200,7 @@ static void rt2400pci_write_beacon(struct queue_entry *entry,
26 /*
27 * Dump beacon to userspace through debugfs.
28 */
29 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
30 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
31 out:
32 /*
33 * Enable beaconing again.
34 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2500pci.c b/drivers/net/wireless/ralink/rt2x00/rt2500pci.c
35 index 9832fd50c793..791434de8052 100644
36 --- a/drivers/net/wireless/ralink/rt2x00/rt2500pci.c
37 +++ b/drivers/net/wireless/ralink/rt2x00/rt2500pci.c
38 @@ -1349,7 +1349,7 @@ static void rt2500pci_write_beacon(struct queue_entry *entry,
39 /*
40 * Dump beacon to userspace through debugfs.
41 */
42 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
43 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
44 out:
45 /*
46 * Enable beaconing again.
47 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2500usb.c b/drivers/net/wireless/ralink/rt2x00/rt2500usb.c
48 index cd3ab5a9e98d..62357465fe29 100644
49 --- a/drivers/net/wireless/ralink/rt2x00/rt2500usb.c
50 +++ b/drivers/net/wireless/ralink/rt2x00/rt2500usb.c
51 @@ -1170,7 +1170,7 @@ static void rt2500usb_write_beacon(struct queue_entry *entry,
52 /*
53 * Dump beacon to userspace through debugfs.
54 */
55 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
56 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
57
58 /*
59 * USB devices cannot blindly pass the skb->len as the
60 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
61 index 572cdea4ca25..8223a1520316 100644
62 --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
63 +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
64 @@ -1014,7 +1014,7 @@ void rt2800_write_beacon(struct queue_entry *entry, struct txentry_desc *txdesc)
65 /*
66 * Dump beacon to userspace through debugfs.
67 */
68 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
69 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
70
71 /*
72 * Write entire beacon with TXWI and padding to register.
73 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00.h b/drivers/net/wireless/ralink/rt2x00/rt2x00.h
74 index ea299c4e7ada..26869b3bef45 100644
75 --- a/drivers/net/wireless/ralink/rt2x00/rt2x00.h
76 +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00.h
77 @@ -1400,11 +1400,11 @@ void rt2x00queue_flush_queues(struct rt2x00_dev *rt2x00dev, bool drop);
78 */
79 #ifdef CPTCFG_RT2X00_LIB_DEBUGFS
80 void rt2x00debug_dump_frame(struct rt2x00_dev *rt2x00dev,
81 - enum rt2x00_dump_type type, struct sk_buff *skb);
82 + enum rt2x00_dump_type type, struct queue_entry *entry);
83 #else
84 static inline void rt2x00debug_dump_frame(struct rt2x00_dev *rt2x00dev,
85 enum rt2x00_dump_type type,
86 - struct sk_buff *skb)
87 + struct queue_entry *entry)
88 {
89 }
90 #endif /* CPTCFG_RT2X00_LIB_DEBUGFS */
91 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00debug.c b/drivers/net/wireless/ralink/rt2x00/rt2x00debug.c
92 index 72ae530e4a3b..964aefdc11f0 100644
93 --- a/drivers/net/wireless/ralink/rt2x00/rt2x00debug.c
94 +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00debug.c
95 @@ -157,9 +157,10 @@ void rt2x00debug_update_crypto(struct rt2x00_dev *rt2x00dev,
96 }
97
98 void rt2x00debug_dump_frame(struct rt2x00_dev *rt2x00dev,
99 - enum rt2x00_dump_type type, struct sk_buff *skb)
100 + enum rt2x00_dump_type type, struct queue_entry *entry)
101 {
102 struct rt2x00debug_intf *intf = rt2x00dev->debugfs_intf;
103 + struct sk_buff *skb = entry->skb;
104 struct skb_frame_desc *skbdesc = get_skb_frame_desc(skb);
105 struct sk_buff *skbcopy;
106 struct rt2x00dump_hdr *dump_hdr;
107 @@ -196,8 +197,8 @@ void rt2x00debug_dump_frame(struct rt2x00_dev *rt2x00dev,
108 dump_hdr->chip_rf = cpu_to_le16(rt2x00dev->chip.rf);
109 dump_hdr->chip_rev = cpu_to_le16(rt2x00dev->chip.rev);
110 dump_hdr->type = cpu_to_le16(type);
111 - dump_hdr->queue_index = skbdesc->entry->queue->qid;
112 - dump_hdr->entry_index = skbdesc->entry->entry_idx;
113 + dump_hdr->queue_index = entry->queue->qid;
114 + dump_hdr->entry_index = entry->entry_idx;
115 dump_hdr->timestamp_sec = cpu_to_le32(timestamp.tv_sec);
116 dump_hdr->timestamp_usec = cpu_to_le32(timestamp.tv_usec);
117
118 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
119 index 4b08007f93f7..dd6678109b7e 100644
120 --- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
121 +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
122 @@ -363,7 +363,7 @@ void rt2x00lib_txdone(struct queue_entry *entry,
123 * Send frame to debugfs immediately, after this call is completed
124 * we are going to overwrite the skb->cb array.
125 */
126 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_TXDONE, entry->skb);
127 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_TXDONE, entry);
128
129 /*
130 * Determine if the frame has been successfully transmitted and
131 @@ -772,7 +772,7 @@ void rt2x00lib_rxdone(struct queue_entry *entry, gfp_t gfp)
132 */
133 rt2x00link_update_stats(rt2x00dev, entry->skb, &rxdesc);
134 rt2x00debug_update_crypto(rt2x00dev, &rxdesc);
135 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_RXDONE, entry->skb);
136 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_RXDONE, entry);
137
138 /*
139 * Initialize RX status information, and send frame
140 diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00queue.c b/drivers/net/wireless/ralink/rt2x00/rt2x00queue.c
141 index b2364d378774..380daf4e1b8d 100644
142 --- a/drivers/net/wireless/ralink/rt2x00/rt2x00queue.c
143 +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00queue.c
144 @@ -544,7 +544,7 @@ static void rt2x00queue_write_tx_descriptor(struct queue_entry *entry,
145 * All processing on the frame has been completed, this means
146 * it is now ready to be dumped to userspace through debugfs.
147 */
148 - rt2x00debug_dump_frame(queue->rt2x00dev, DUMP_FRAME_TX, entry->skb);
149 + rt2x00debug_dump_frame(queue->rt2x00dev, DUMP_FRAME_TX, entry);
150 }
151
152 static void rt2x00queue_kick_tx_queue(struct data_queue *queue,
153 diff --git a/drivers/net/wireless/ralink/rt2x00/rt61pci.c b/drivers/net/wireless/ralink/rt2x00/rt61pci.c
154 index 8adb5f3abe15..973d418b8113 100644
155 --- a/drivers/net/wireless/ralink/rt2x00/rt61pci.c
156 +++ b/drivers/net/wireless/ralink/rt2x00/rt61pci.c
157 @@ -1988,7 +1988,7 @@ static void rt61pci_write_beacon(struct queue_entry *entry,
158 /*
159 * Dump beacon to userspace through debugfs.
160 */
161 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
162 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
163
164 /*
165 * Write entire beacon with descriptor and padding to register.
166 diff --git a/drivers/net/wireless/ralink/rt2x00/rt73usb.c b/drivers/net/wireless/ralink/rt2x00/rt73usb.c
167 index 1a29c4d205a5..bb8d307a789f 100644
168 --- a/drivers/net/wireless/ralink/rt2x00/rt73usb.c
169 +++ b/drivers/net/wireless/ralink/rt2x00/rt73usb.c
170 @@ -1557,7 +1557,7 @@ static void rt73usb_write_beacon(struct queue_entry *entry,
171 /*
172 * Dump beacon to userspace through debugfs.
173 */
174 - rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry->skb);
175 + rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_BEACON, entry);
176
177 /*
178 * Write entire beacon with descriptor and padding to register.
179 --
180 2.12.1
181