Messages in this thread | | | Subject | Re: [PATCH] Re: PPPoE Oops with 2.4.22-rc | From | Marcus Sundberg <> | Date | 22 Aug 2003 23:12:56 +0200 |
| |
Junio C Hamano <junkio@cox.net> writes:
> >>>>> "MS" == Marcus Sundberg <marcus@ingate.com> writes: > > MS> this patch fixes one crash in pppoe_connect(): > > --- linux-2.4.21-rc2/drivers/net/pppoe.c~ Wed May 14 00:08:52 2003 > +++ linux-2.4.21-rc2/drivers/net/pppoe.c Wed May 14 00:18:47 2003 > @@ -606,7 +606,8 @@ > /* Delete the old binding */ > delete_item(po->pppoe_pa.sid,po->pppoe_pa.remote); > > - dev_put(po->pppoe_dev); > + if (po->pppoe_dev) > + dev_put(po->pppoe_dev); > > memset(po, 0, sizeof(struct pppox_opt)); > po->sk = sk; > > Could you explain when/how pppoe_connect gets called with > (pppoe_dev == NULL) but with an old binding?
I triggered it by doing 'ifconfig down' on the underlying ethernet device. It's possible there are other ways to trigger it also. When I made the fix I just looked at where the oops occured.
//Marcus -- ---------------------------------------+-------------------------- Marcus Sundberg <marcus@ingate.com> | Firewalls with SIP & NAT Firewall Developer, Ingate Systems AB | http://www.ingate.com/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |