linux-stable/drivers/net/wireless
David Woodhouse e9024a059f libertas if_usb: Fix crash on 64-bit machines
On a 64-bit kernel, skb->tail is an offset, not a pointer. The libertas
usb driver passes it to usb_fill_bulk_urb() anyway, causing interesting
crashes. Fix that by using skb->data instead.

This highlights a problem with usb_fill_bulk_urb(). It doesn't notice
when dma_map_single() fails and return the error to its caller as it
should. In fact it _can't_ currently return the error, since it returns
void.

So this problem was showing up only at unmap time, after we'd already
suffered memory corruption by doing DMA to a bogus address.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Cc: stable@kernel.org
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-10-30 15:50:25 -04:00
..
ath ath9k: fix misplaced semicolon on rate control 2009-10-30 15:50:25 -04:00
b43 b43: Fix DMA TX bounce buffer copying 2009-10-30 15:50:25 -04:00
b43legacy b44/b43/b43legacy: Fix switch warnings introduced by SSB-SDIO 2009-09-09 11:19:03 -04:00
hostap hostap: Revert a toxic part of the conversion to net_device_ops 2009-09-23 11:35:39 -04:00
ipw2x00 ipw2200: fix oops on missing firmware 2009-10-30 15:50:24 -04:00
iwlwifi iwlwifi: change the order of freeing memory 2009-10-12 15:55:52 -04:00
iwmc3200wifi debugfs: Change debugfs directory of IWMC3200 2009-09-15 09:50:48 -07:00
libertas libertas if_usb: Fix crash on 64-bit machines 2009-10-30 15:50:25 -04:00
libertas_tf
orinoco Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-09-02 00:32:56 -07:00
p54 p54usb: add Zcomax XG-705A usbid 2009-09-23 11:35:41 -04:00
prism54 wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
rt2x00 rt73usb.c : more ids 2009-10-30 15:50:24 -04:00
rtl818x Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-09-02 00:32:56 -07:00
wl12xx Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-09-24 15:13:11 -07:00
zd1211rw Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-09-24 15:13:11 -07:00
adm8211.c
adm8211.h mac80211: fix ADM8211_SYNCTL_RFtype define 2009-10-07 16:33:51 -04:00
airo.c airo: Reorder tests, check bounds before element 2009-10-27 16:29:49 -04:00
airo.h
airo_cs.c
arlan-main.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
arlan-proc.c sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
arlan.h
at76c50x-usb.c
at76c50x-usb.h
atmel.c trivial: fix typos "man[ae]g?ment" -> "management" 2009-09-21 15:14:56 +02:00
atmel.h
atmel_cs.c
atmel_pci.c
i82586.h
i82593.h
Kconfig Kconfig: STRIP: Remove stale bits of STRIP help text 2009-10-01 14:49:14 -07:00
mac80211_hwsim.c mac80211_hwsim: Fix initial beacon timer configuration 2009-09-29 17:25:16 -04:00
Makefile
mwl8k.c
netwave_cs.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
ray_cs.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
ray_cs.h
rayctl.h
rndis_wlan.c rndis_wlan: fix sparse endianess warnings 2009-09-01 12:48:22 -04:00
strip.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
wavelan.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
wavelan.h
wavelan.p.h wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
wavelan_cs.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
wavelan_cs.h
wavelan_cs.p.h wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
wl3501.h
wl3501_cs.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
zd1201.c wireless: convert drivers to netdev_tx_t 2009-09-01 01:14:04 -07:00
zd1201.h