Bug #180

pppoe connection problems

Added by skrueger over 8 years ago. Updated almost 8 years ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:-

Description

hi folks,

I can't connect to the Internet using ppp and pppoe (-current, sources
updated around May 21)

I did a full buildworld/buildkernel, I did *not* change any
configuration files (ppp.conf etc) and it's a mystery to me why ppp
can't establish a connection (there isn't any interessting in
/var/log/ppp.log)

any help appreciated

PS: PPPoE connection works fine under windows/linux/solaris

History

#1 Updated by skrueger about 8 years ago

mh I did some more testing

tcpdump -ttt -vvv -i fxp0 shows the usual things like AC-Name,
AC-Cookie, etc.

but tcpdump -ttt -vvv -i tun0 shows nothing

so what's wrong? netgraph?

#2 Updated by sepherosa about 8 years ago

On 5/24/06, Stefan Kr├╝ger <> wrote:
> hi folks,
>
> I can't connect to the Internet using ppp and pppoe (-current, sources
> updated around May 21)
>
> I did a full buildworld/buildkernel, I did *not* change any
> configuration files (ppp.conf etc) and it's a mystery to me why ppp
> can't establish a connection (there isn't any interessting in
> /var/log/ppp.log)

Can you post a `boot -v' dmesg?

Best Regards,
sephe

#4 Updated by skrueger about 8 years ago

I've also logged the "killed my pppoe connection"-cvsup run, it's
available at:

http://tecneeq.dyndns.org/~cosmicdj/src-20060522

#5 Updated by qhwt+dfly about 8 years ago

On Sun, May 28, 2006 at 07:00:51PM +0100, Stefan Kr?ger wrote:
> I've also logged the "killed my pppoe connection"-cvsup run, it's
> available at:
>
> http://tecneeq.dyndns.org/~cosmicdj/src-20060522

So if you checkout the source with date=2006.05.20.06.32.00
and reinstall the kernel, does pppoe connection come back?

#6 Updated by skrueger about 8 years ago

YONETANI Tomokazu wrote:
>> I've also logged the "killed my pppoe connection"-cvsup run, it's
>> available at:
>>
>> http://tecneeq.dyndns.org/~cosmicdj/src-20060522
>
> So if you checkout the source with date=2006.05.20.06.32.00
> and reinstall the kernel, does pppoe connection come back?

yes, it's back now (note: I also rebuilt userland)

related (IMHO) commits made between 20. May and 22. May:

http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00108.html
the big #include cleanup, maybe unrelated

http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00113.html
netmsg embeded in the mbuf, hhhmmm... no idea

http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00116.html
"Fix a build issue with libnetgraph" well pppoe uses netgraph...

http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00120.html
another big #include cleanup

unfortunately most of them are quite "big", touching many files etc; so
any help debugging this further appreciated

#7 Updated by dillon about 8 years ago

:YONETANI Tomokazu wrote:
:>> I've also logged the "killed my pppoe connection"-cvsup run, it's
:>> available at:
:>>
:>> http://tecneeq.dyndns.org/~cosmicdj/src-20060522
:>
:> So if you checkout the source with date=2006.05.20.06.32.00
:> and reinstall the kernel, does pppoe connection come back?
:
:yes, it's back now (note: I also rebuilt userland)
:
:related (IMHO) commits made between 20. May and 22. May:
:....
:
:http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00113.html
:netmsg embeded in the mbuf, hhhmmm... no idea
:
:unfortunately most of them are quite "big", touching many files etc; so
:any help debugging this further appreciated

It's probably this one, I'll take a look at it as soon as I get the
scheduler bug fixed.

-Matt
Matthew Dillon
<>

#8 Updated by qhwt+dfly about 8 years ago

On Mon, Jun 05, 2006 at 01:31:04PM -0700, Matthew Dillon wrote:
> :http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00113.html
> :netmsg embeded in the mbuf, hhhmmm... no idea
> :
> :unfortunately most of them are quite "big", touching many files etc; so
> :any help debugging this further appreciated
>
> It's probably this one, I'll take a look at it as soon as I get the
> scheduler bug fixed.

Ok, here's a bandaid until Matt makes his mind on how to fix this issue
(other "do not reply!" comments may need similar bandaids depending
on your network configuration):

Index: ng_base.c
===================================================================
RCS file: /home/source/dragonfly/cvs/src/sys/netgraph/netgraph/ng_base.c,v
retrieving revision 1.20
diff -u -r1.20 ng_base.c
--- ng_base.c 1 Jun 2006 06:10:54 -0000 1.20
+++ ng_base.c 6 Jun 2006 11:11:36 -0000
@@ -2087,7 +2087,9 @@
}
}
out:
- /* pmsg was embedded in the mbuf, do not reply! */
+ /* netgraph code may receive non embedded-in-mbuf netmsg's */
+ if (pmsg != &m->mh_netmsg.nm_lmsg)
+ lwkt_replymsg(pmsg->nm_lmsg, 0);
return(EASYNC);
}

#9 Updated by qhwt+dfly about 8 years ago

On Tue, Jun 06, 2006 at 08:26:06PM +0900, YONETANI Tomokazu wrote:
> On Mon, Jun 05, 2006 at 01:31:04PM -0700, Matthew Dillon wrote:
> > :http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00113.html
> > :netmsg embeded in the mbuf, hhhmmm... no idea
> > :
> > :unfortunately most of them are quite "big", touching many files etc; so
> > :any help debugging this further appreciated
> >
> > It's probably this one, I'll take a look at it as soon as I get the
> > scheduler bug fixed.
>
> Ok, here's a bandaid until Matt makes his mind on how to fix this issue
> (other "do not reply!" comments may need similar bandaids depending
> on your network configuration):
>
> Index: ng_base.c

Oops, copy&paste error...

--- sys/netgraph/netgraph/ng_base.c Sat Jun 03 08:06:31 2006 +0000
+++ sys/netgraph/netgraph/ng_base.c Tue Jun 06 22:55:38 2006 +0900
@@ -2087,7 +2087,9 @@ ngintr(struct netmsg *pmsg)
}
}
out:
- /* pmsg was embedded in the mbuf, do not reply! */
+ /* netgraph code may receive non embedded-in-mbuf netmsg's */
+ if (&pmsg->nm_lmsg != &m->m_hdr.mh_netmsg.nm_lmsg)
+ lwkt_replymsg(&pmsg->nm_lmsg, 0);
return(EASYNC);
}

#10 Updated by skrueger about 8 years ago

YONETANI Tomokazu wrote:
> On Tue, Jun 06, 2006 at 08:26:06PM +0900, YONETANI Tomokazu wrote:
>> On Mon, Jun 05, 2006 at 01:31:04PM -0700, Matthew Dillon wrote:
>>> :http://leaf.dragonflybsd.org/mailarchive/commits/2006-05/msg00113.html
>>> :netmsg embeded in the mbuf, hhhmmm... no idea
>>> :
>>> :unfortunately most of them are quite "big", touching many files etc; so
>>> :any help debugging this further appreciated
>>>
>>> It's probably this one, I'll take a look at it as soon as I get the
>>> scheduler bug fixed.
>> Ok, here's a bandaid until Matt makes his mind on how to fix this issue
>> (other "do not reply!" comments may need similar bandaids depending
>> on your network configuration):
>>
>> Index: ng_base.c
>
> Oops, copy&paste error...
>
> --- sys/netgraph/netgraph/ng_base.c Sat Jun 03 08:06:31 2006 +0000
> +++ sys/netgraph/netgraph/ng_base.c Tue Jun 06 22:55:38 2006 +0900
> @@ -2087,7 +2087,9 @@ ngintr(struct netmsg *pmsg)
> }
> }
> out:
> - /* pmsg was embedded in the mbuf, do not reply! */
> + /* netgraph code may receive non embedded-in-mbuf netmsg's */
> + if (&pmsg->nm_lmsg != &m->m_hdr.mh_netmsg.nm_lmsg)
> + lwkt_replymsg(&pmsg->nm_lmsg, 0);
> return(EASYNC);
> }

this one works, thanks :)

#11 Updated by dillon about 8 years ago

:> out:
:> - /* pmsg was embedded in the mbuf, do not reply! */
:> + /* netgraph code may receive non embedded-in-mbuf netmsg's */
:> + if (&pmsg->nm_lmsg != &m->m_hdr.mh_netmsg.nm_lmsg)
:> + lwkt_replymsg(&pmsg->nm_lmsg, 0);
:> return(EASYNC);
:> }
:
:this one works, thanks :)

Hmm. It looks like I didn't take into account calls made to
schednetisr(), whos messages do need to be replied.

I'll commit a more involved fix. It is going to be a little messier
then I would like because messages embedded in a mbuf can't be checked
after the mbuf has been freed.

-Matt
Matthew Dillon
<>

#12 Updated by dillon about 8 years ago

:> Ok, here's a bandaid until Matt makes his mind on how to fix this issue
:> (other "do not reply!" comments may need similar bandaids depending
:> on your network configuration):
:>
:> Index: ng_base.c

It turned out not be as messy as I though it would be. I'll commit
a fix soon.

Both PPP and NETGRAPH needed the fix.

-Matt

Also available in: Atom PDF