Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Mar 2001 19:35:24 -0500
From:      Mike Tancsa <mike@sentex.net>
To:        Archie Cobbs <archie@dellroad.org>
Cc:        freebsd-stable@freebsd.org, freebsd-net@freebsd.org, luigi@freebsd.org
Subject:   Re: Kernel Panic on 4.3-RC #0 using PPPoE
Message-ID:  <4.2.2.20010327193230.02d68f08@192.168.0.12>
In-Reply-To: <200103272040.f2RKeBn44013@arch20m.dellroad.org>
References:  <4.2.2.20010327070955.01db1268@192.168.0.12>

next in thread | previous in thread | raw e-mail | index | archive | help
At 12:40 PM 3/27/2001 -0800, Archie Cobbs wrote:
>Mike Tancsa writes:
> > >Not sure why this hasn't been detected before though. Below is
> > >a possible patch.
> >
> > It has been at http://www.freebsd.org/cgi/query-pr.cgi?pr=25478 and
> > discussed a few times in freebsd-net.
>
>Here is the better (?) patch. I'd like to commit this if nobody
>objects..
>
>Luigi: would you mind reviewing this for possible BRIDGE problems?

Any chances for

kern/22176
kern/22177
kern/22178
kern/22179
kern/22181

These were raised on freebsd-net as well in the thread "A few nasty bugs in 
the networking code"

 > > kern/22176

if_delmulti() (net/if.c) does not notify a corresponding interface
driver when a _link-layer_ multicast group is being left.  Hence
hardware multicast filters won't get reloaded etc. Of course, one
may rarely need link-layer mcast groups (but I did). Nevertheless,
it's a bug and must be fixed.

 > > kern/22177

There is a mtod() without a prior m_pullup() in netinet/if_ether.c.
The system might be likely to crash sometimes...

 > > kern/22178

The vlan driver don't update byte/packet counters that it should to.

 > > kern/22179

The vlan driver mishandles the interface flags. That may lead to Bad Things
like crashes sometimes...

 > > kern/22181

The vlan driver's author got a wrong idea about the struct sockaddr_dl
contents when writing the code. It's also a good idea to check the return
value of malloc()...



>-Archie
>
>__________________________________________________________________________
>Archie Cobbs     *     Packet Design     *     http://www.packetdesign.com
>
>Index: if_ethersubr.c
>===================================================================
>RCS file: /home/ncvs/src/sys/net/if_ethersubr.c,v
>retrieving revision 1.70.2.15
>diff -u -r1.70.2.15 if_ethersubr.c
>--- if_ethersubr.c      2001/03/13 22:00:32     1.70.2.15
>+++ if_ethersubr.c      2001/03/27 20:39:38
>@@ -366,6 +366,11 @@
>  {
>         int s, error = 0;
>
>+       if ((ifp->if_flags & (IFF_UP|IFF_RUNNING)) != (IFF_UP|IFF_RUNNING)) {
>+               m_freem(m);
>+               return (ENETDOWN);
>+       }
>+
>  #ifdef BRIDGE
>         if (do_bridge && BDG_USED(ifp) ) {
>                 struct ether_header *eh; /* a ptr suffices */
>
>To Unsubscribe: send mail to majordomo@FreeBSD.org
>with "unsubscribe freebsd-stable" in the body of the message

--------------------------------------------------------------------
Mike Tancsa,                          	          tel +1 519 651 3400
Network Administration,     			  mike@sentex.net
Sentex Communications                 		  www.sentex.net
Cambridge, Ontario Canada			  www.sentex.net/mike


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4.2.2.20010327193230.02d68f08>