summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00.h
diff options
context:
space:
mode:
authorGertjan van Wingerde2009-12-04 23:47:01 +0100
committerJohn W. Linville2009-12-22 00:56:30 +0100
commit77e73d1849c860d22ebba8826ad162ccfda4c535 (patch)
treea4e238c8dd4f2e1c813619f092eca1668b947815 /drivers/net/wireless/rt2x00/rt2x00.h
parentrt2x00 : trim the skb after having the l2pad removed. (diff)
downloadkernel-qcow2-linux-77e73d1849c860d22ebba8826ad162ccfda4c535.tar.gz
kernel-qcow2-linux-77e73d1849c860d22ebba8826ad162ccfda4c535.tar.xz
kernel-qcow2-linux-77e73d1849c860d22ebba8826ad162ccfda4c535.zip
rt2x00: Further L2 padding fixes.
Fix a couple of more bugs in the L2 padding code: 1. Compute the amount of L2 padding correctly (in 3 places). 2. Trim the skb correctly when the L2 padding has been applied. Also introduce a central macro the compute the L2 padding size. Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com> Acked-by: Ivo van Doorn <ivdoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00.h')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
index 4d841c07c970..194dae01d0c3 100644
--- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -104,6 +104,12 @@
#define GET_DURATION_RES(__size, __rate)(((__size) * 8 * 10) % (__rate))
/*
+ * Determine the number of L2 padding bytes required between the header and
+ * the payload.
+ */
+#define L2PAD_SIZE(__hdrlen) (-(__hdrlen) & 3)
+
+/*
* Determine the alignment requirement,
* to make sure the 802.11 payload is padded to a 4-byte boundrary
* we must determine the address of the payload and calculate the