carl9170: fix virtual interface setup crash
authorChristian Lamparter <chunkeey@googlemail.com>
Sat, 20 Nov 2010 12:15:27 +0000 (13:15 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 22 Nov 2010 20:19:32 +0000 (15:19 -0500)
commitb397492a8c1022887a9b2fb925fe92e69ce0ad4d
tree694e3d428ed26e8fc38492dfdacdc3979fac066b
parent1d8638d4038eb8709edc80e37a0bbb77253d86e9
carl9170: fix virtual interface setup crash

This patch fixes a faulty bound check which caused a
crash when too many virtual interface were brought up.

BUG: unable to handle kernel NULL pointer dereference at 00000004
IP: [<f8125f67>] carl9170_op_add_interface+0x1d7/0x2c0 [carl9170]
*pde = 00000000
Oops: 0002 [#1] PREEMPT
Modules linked in: carl9170 [...]
Pid: 4720, comm: wpa_supplicant Not tainted 2.6.37-rc2-wl+
EIP: 0060:[<f8125f67>] EFLAGS: 00210206 CPU: 0
EIP is at carl9170_op_add_interface+0x1d7/0x2c0 [carl9170]
EAX: 00000000 ...
Process wpa_supplicant
Stack:
 f4f88f34 fffffff4 ..
Call Trace:
 [<f8f4e666>] ? ieee80211_do_open+0x406/0x5c0 [mac80211]
 [...]
Code: <89> 42 04 ...
EIP: [<f8125f67>] carl9170_op_add_interface+0x1d7/0x2c0 [carl9170]
CR2: 0000000000000004

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/carl9170/main.c