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: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
d025d7858f
commit
83d35145c4
|
@ -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;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue