Date: Fri, 24 Jan 2003 10:47:12 +0200 From: "Ari Suutari" <ari.suutari@syncrontech.com> To: "Gary Jennejohn" <garyj@jennejohn.org> Cc: "G Hasse" <gh@raditex.se>, <freebsd-isdn@FreeBSD.ORG> Subject: Re: Problem with "no bufferspace" - solution Message-ID: <00dd01c2c385$308ba500$2508473e@coffee> References: <200301221335.h0MDZeWs003663@peedub.jennejohn.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, Here is a patch that works for me. The only problem is that I got following message to console: Jan 24 10:33:04 test /kernel: isp1: lcp illegal down in state starting when dialing fails. Maybe something else than sp->pp_down should be used to close down sppp layer. However, the sppp layer returns to idle state and new ping tries to dial again. Ari S. *** i4b_isppp.c.orig Wed Apr 24 21:45:24 2002 --- i4b_isppp.c Fri Jan 24 10:32:32 2003 *************** *** 614,619 **** --- 614,620 ---- i4bisppp_dialresponse(int unit, int status, cause_t cause) { struct i4bisppp_softc *sc = &i4bisppp_softc[unit]; + struct sppp *sp = &sc->sc_if_un.scu_sp; NDBGL4(L4_ISPDBG, "isp%d: status=%d, cause=%d", unit, status, cause); *************** *** 628,633 **** --- 629,639 ---- while((m = sppp_dequeue(&sc->sc_if)) != NULL) m_freem(m); } + + sc->sc_cdp = (call_desc_t *)0; + /* do thhis here because pp_down calls i4bisppp_tlf */ + sc->sc_state = ST_IDLE; + sp->pp_down(sp); /* tell PPP we have hung up */ } } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isdn" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00dd01c2c385$308ba500$2508473e>