提交 138b9dd1 编写于 作者: D Dave Jones 提交者: Linus Torvalds

[PATCH] icn driver fails to unload when no hardware present

Fix a null dereference in module unload path.

Found by a simple modprobe icn ; rmmod icn
Signed-off-by: NDave Jones <davej@redhat.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 92e52b2e
...@@ -1650,7 +1650,7 @@ static void __exit icn_exit(void) ...@@ -1650,7 +1650,7 @@ static void __exit icn_exit(void)
{ {
isdn_ctrl cmd; isdn_ctrl cmd;
icn_card *card = cards; icn_card *card = cards;
icn_card *last; icn_card *last, *tmpcard;
int i; int i;
unsigned long flags; unsigned long flags;
...@@ -1670,8 +1670,9 @@ static void __exit icn_exit(void) ...@@ -1670,8 +1670,9 @@ static void __exit icn_exit(void)
for (i = 0; i < ICN_BCH; i++) for (i = 0; i < ICN_BCH; i++)
icn_free_queue(card, i); icn_free_queue(card, i);
} }
card = card->next; tmpcard = card->next;
spin_unlock_irqrestore(&card->lock, flags); spin_unlock_irqrestore(&card->lock, flags);
card = tmpcard;
} }
card = cards; card = cards;
cards = NULL; cards = NULL;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册