5b057c6b1a
First of all it is unnecessary to allocate a new skb in skb_pad since the existing one is not shared. More importantly, our hard_start_xmit interface does not allow a new skb to be allocated since that breaks requeueing. This patch uses pskb_expand_head to expand the existing skb and linearize it if needed. Actually, someone should sift through every instance of skb_pad on a non-linear skb as they do not fit the reasons why this was originally created. Incidentally, this fixes a minor bug when the skb is cloned (tcpdump, TCP, etc.). As it is skb_pad will simply write over a cloned skb. Because of the position of the write it is unlikely to cause problems but still it's best if we don't do it. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
bcm43xx | ||
hostap | ||
prism54 | ||
airo_cs.c | ||
airo.c | ||
airo.h | ||
airport.c | ||
arlan-main.c | ||
arlan-proc.c | ||
arlan.h | ||
atmel_cs.c | ||
atmel_pci.c | ||
atmel.c | ||
atmel.h | ||
hermes_rid.h | ||
hermes.c | ||
hermes.h | ||
i82586.h | ||
i82593.h | ||
ipw2100.c | ||
ipw2100.h | ||
ipw2200.c | ||
ipw2200.h | ||
Kconfig | ||
Makefile | ||
netwave_cs.c | ||
orinoco_cs.c | ||
orinoco_nortel.c | ||
orinoco_pci.c | ||
orinoco_pci.h | ||
orinoco_plx.c | ||
orinoco_tmd.c | ||
orinoco.c | ||
orinoco.h | ||
ray_cs.c | ||
ray_cs.h | ||
rayctl.h | ||
README | ||
spectrum_cs.c | ||
strip.c | ||
todo.txt | ||
wavelan_cs.c | ||
wavelan_cs.h | ||
wavelan_cs.p.h | ||
wavelan.c | ||
wavelan.h | ||
wavelan.p.h | ||
wl3501_cs.c | ||
wl3501.h | ||
zd1201.c | ||
zd1201.h |
README ------ This directory is mostly for Wireless LAN drivers, in their various incarnations (ISA, PCI, Pcmcia...). This separate directory is needed because a lot of driver work on different bus (typically PCI + Pcmcia) and share 95% of the code. This allow the code and the config options to be in one single place instead of scattered all over the driver tree, which is never 100% satisfactory. Note : if you want more info on the topic of Wireless LANs, you are kindly invited to have a look at the Wireless Howto : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/ Some Wireless LAN drivers, like orinoco_cs, require the use of Wireless Tools to be configured : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html Special notes for distribution maintainers : 1) wvlan_cs will be discontinued soon in favor of orinoco_cs 2) Please add Wireless Tools support in your scripts Have fun... Jean