summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54
diff options
context:
space:
mode:
authorChristian Lamparter2009-01-09 21:06:30 +0100
committerJohn W. Linville2009-01-16 23:08:22 +0100
commitef15aa490f2e447ce04fe643500b814ef40f6ea9 (patch)
treee7d9c9682ef3f30e14d7f5be81d89ab64d1c7238 /drivers/net/wireless/p54
parentb44: GFP_DMA skb should not escape from driver (diff)
downloadkernel-qcow2-linux-ef15aa490f2e447ce04fe643500b814ef40f6ea9.tar.gz
kernel-qcow2-linux-ef15aa490f2e447ce04fe643500b814ef40f6ea9.tar.xz
kernel-qcow2-linux-ef15aa490f2e447ce04fe643500b814ef40f6ea9.zip
p54: fix oops caused by bad eeproms
This patch fixes a bug that could occur, if it the eeprom is incomplete or partly corrupted. BUG: unable to handle kernel NULL pointer dereference at 00000008 IP: p54_assign_address+0x108/0x15d [p54common] Oops: 0002 [#1] SMP Pid: 12988, comm: phy1 Tainted: P W 2.6.28-rc6-wl #3 RIP: 0010: p54_assign_address+0x108/0x15d [p54common] [...] Call Trace: p54_alloc_skb+0xa3/0xc0 [p54common] p54_scan+0x37/0x204 [p54common] [...] Signed-off-by: Christian Lamparter <chunkeey@web.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/p54')
-rw-r--r--drivers/net/wireless/p54/p54common.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c
index c6a370fa9bcb..3b44e8e76030 100644
--- a/drivers/net/wireless/p54/p54common.c
+++ b/drivers/net/wireless/p54/p54common.c
@@ -1610,7 +1610,7 @@ static int p54_scan(struct ieee80211_hw *dev, u16 mode, u16 dwell)
err:
printk(KERN_ERR "%s: frequency change failed\n", wiphy_name(dev->wiphy));
- kfree_skb(skb);
+ p54_free_skb(dev, skb);
return -EINVAL;
}