aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHelmut Schaa <helmut.schaa@googlemail.com>2011-03-28 07:33:04 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-04-04 16:20:03 -0400
commit2f2bb7e8bdc977c94cdaaf84328526555eba89b1 (patch)
tree2fecab069c76d9fc83df47453b781f440fe2659e
parentfa71a160272c0eec9c04102ab2a82befb7cb107f (diff)
rt2x00: Remove obsolete rt2x00queue_align_payload
Since commit d1c3a37ceeb1a5ea02991a0476355f1a1d3b3e83 ("mac80211: clarify alignment docs, fix up alignment") removed the requirement for a 4-byte aligned payload rt2x00queue_align_payload is obsolete as mac80211 will align the payload when it passes the frame to the net stack. As a result we can remove the call to rt2x00queue_align_payload in the rx path and since that's the last user we can remove rt2x00queue_align_payload altogether. One advantage is that we save some alignment operations for frames that don't need to be aligned (for example beause they are not passed to the net stack). Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00dev.c2
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00lib.h10
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00queue.c13
3 files changed, 0 insertions, 25 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
index d63b582b6875..55c1d0332b2a 100644
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -512,8 +512,6 @@ void rt2x00lib_rxdone(struct queue_entry *entry)
512 (rxdesc.size > header_length) && 512 (rxdesc.size > header_length) &&
513 (rxdesc.dev_flags & RXDONE_L2PAD)) 513 (rxdesc.dev_flags & RXDONE_L2PAD))
514 rt2x00queue_remove_l2pad(entry->skb, header_length); 514 rt2x00queue_remove_l2pad(entry->skb, header_length);
515 else
516 rt2x00queue_align_payload(entry->skb, header_length);
517 515
518 /* Trim buffer to correct size */ 516 /* Trim buffer to correct size */
519 skb_trim(entry->skb, rxdesc.size); 517 skb_trim(entry->skb, rxdesc.size);
diff --git a/drivers/net/wireless/rt2x00/rt2x00lib.h b/drivers/net/wireless/rt2x00/rt2x00lib.h
index 2d94cbaf5f4a..63c40d457244 100644
--- a/drivers/net/wireless/rt2x00/rt2x00lib.h
+++ b/drivers/net/wireless/rt2x00/rt2x00lib.h
@@ -119,16 +119,6 @@ void rt2x00queue_free_skb(struct queue_entry *entry);
119void rt2x00queue_align_frame(struct sk_buff *skb); 119void rt2x00queue_align_frame(struct sk_buff *skb);
120 120
121/** 121/**
122 * rt2x00queue_align_payload - Align 802.11 payload to 4-byte boundary
123 * @skb: The skb to align
124 * @header_length: Length of 802.11 header
125 *
126 * Align the 802.11 payload to a 4-byte boundary, this could
127 * mean the header is not aligned properly though.
128 */
129void rt2x00queue_align_payload(struct sk_buff *skb, unsigned int header_length);
130
131/**
132 * rt2x00queue_insert_l2pad - Align 802.11 header & payload to 4-byte boundary 122 * rt2x00queue_insert_l2pad - Align 802.11 header & payload to 4-byte boundary
133 * @skb: The skb to align 123 * @skb: The skb to align
134 * @header_length: Length of 802.11 header 124 * @header_length: Length of 802.11 header
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c
index 4b3c70eeef1f..5d8925991ffb 100644
--- a/drivers/net/wireless/rt2x00/rt2x00queue.c
+++ b/drivers/net/wireless/rt2x00/rt2x00queue.c
@@ -148,19 +148,6 @@ void rt2x00queue_align_frame(struct sk_buff *skb)
148 skb_trim(skb, frame_length); 148 skb_trim(skb, frame_length);
149} 149}
150 150
151void rt2x00queue_align_payload(struct sk_buff *skb, unsigned int header_length)
152{
153 unsigned int frame_length = skb->len;
154 unsigned int align = ALIGN_SIZE(skb, header_length);
155
156 if (!align)
157 return;
158
159 skb_push(skb, align);
160 memmove(skb->data, skb->data + align, frame_length);
161 skb_trim(skb, frame_length);
162}
163
164void rt2x00queue_insert_l2pad(struct sk_buff *skb, unsigned int header_length) 151void rt2x00queue_insert_l2pad(struct sk_buff *skb, unsigned int header_length)
165{ 152{
166 unsigned int payload_length = skb->len - header_length; 153 unsigned int payload_length = skb->len - header_length;