mirror of https://gitee.com/openkylin/linux.git
PCMCIA: fix sa1111 oops on remove
The sa1111 socket driver oopses when removed: Unable to handle kernel NULL pointer dereference at virtual address 000003b0 pgd = c1b40000 [000003b0] *pgd=00000000 Internal error: Oops: 41b43005 [#1] Modules linked in: CPU: 0 Not tainted (3.3.0-rc1+ #744) PC is at pcmcia_remove+0x3c/0x60 LR is at pcmcia_remove+0x34/0x60 This is because we try to dereference a NULL 's' to obtain the next pointer. Fix this. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
b3945bcbc3
commit
171cf94ccb
|
@ -205,7 +205,8 @@ static int __devexit pcmcia_remove(struct sa1111_dev *dev)
|
|||
|
||||
dev_set_drvdata(&dev->dev, NULL);
|
||||
|
||||
for (; next = s->next, s; s = next) {
|
||||
for (; s; s = next) {
|
||||
next = s->next;
|
||||
soc_pcmcia_remove_one(&s->soc);
|
||||
kfree(s);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue