Commit 83d35145 authored by Linas Vepstas's avatar Linas Vepstas Committed by Jeff Garzik

spidernet: null out skb pointer after its been used.

Avoid kernel crash in mm/slab.c due to double-free of pointer.

If the ethernet interface is brought down while there is still
RX traffic in flight, the device shutdown routine can end up
trying to double-free an skb, leading to a crash in mm/slab.c
Avoid the double-free by nulling out the skb pointer.
Signed-off-by: default avatarLinas Vepstas <linas@austin.ibm.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent d025d785
...@@ -1131,6 +1131,7 @@ spider_net_decode_one_descr(struct spider_net_card *card) ...@@ -1131,6 +1131,7 @@ spider_net_decode_one_descr(struct spider_net_card *card)
/* Ok, we've got a packet in descr */ /* Ok, we've got a packet in descr */
spider_net_pass_skb_up(descr, card); spider_net_pass_skb_up(descr, card);
descr->skb = NULL;
hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE; hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE;
return 1; return 1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment