Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Aug 2018 17:17:05 -0700
From:      Matthew Macy <mmacy@freebsd.org>
To:        Mark Johnston <markj@freebsd.org>
Cc:        Gleb Smirnoff <glebius@freebsd.org>, src-committers <src-committers@freebsd.org>,  svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r337866 - in head/sys: net netinet netinet6
Message-ID:  <CAPrugNp7vHmeAu8A6-JpLGTXqoTqg-dZSR7no9UXr48eqxv9rw@mail.gmail.com>
In-Reply-To: <20180821235227.GB55580@raichu>
References:  <201808152023.w7FKN9LL055254@repo.freebsd.org> <20180821212047.GM27633@FreeBSD.org> <CAPrugNr6N8O%2BVA5Nykh58aV733_5aj4vbgh=S-6A3Awf%2BK_zDw@mail.gmail.com> <20180821235227.GB55580@raichu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 21, 2018 at 16:52 Mark Johnston <markj@freebsd.org> wrote:

> On Tue, Aug 21, 2018 at 04:00:10PM -0700, Matthew Macy wrote:
> > Yes. See r338162. Thanks.
>
> You missed instances of the same bug in in_mcast.c and in6_mcast.c.



Thanks

>
>
> > On Tue, Aug 21, 2018 at 2:24 PM Gleb Smirnoff <glebius@freebsd.org>
> wrote:
> > > On Wed, Aug 15, 2018 at 08:23:09PM +0000, Matt Macy wrote:
> > > M> @@ -3772,8 +3775,11 @@ if_delmulti_locked(struct ifnet *ifp, struct
> > > ifmultiad
> > > M>                      ll_ifma->ifma_ifp = NULL;       /* XXX */
> > > M>              if (--ll_ifma->ifma_refcount == 0) {
> > > M>                      if (ifp != NULL) {
> > > M> -                            CK_STAILQ_REMOVE(&ifp->if_multiaddrs,
> > > ll_ifma, ifmultiaddr,
> > > M> -                                ifma_link);
> > > M> +                            if (ll_ifma->ifma_flags &
> IFMA_F_ENQUEUED)
> > > {
> > > M> +
> > > CK_STAILQ_REMOVE(&ifp->if_multiaddrs, ll_ifma, ifmultiaddr,
> > > M> +                                            ifma_link);
> > > M> +                                    ifma->ifma_flags &=
> > > ~IFMA_F_ENQUEUED;
> > > M> +                            }
> > > M>                      }
> > > M>                      if_freemulti(ll_ifma);
> > > M>              }
> > >
> > > Coverity suggested there is a cut and paste mistake here, and it is
> > > compilable.
> > > After quick glance I tend to agree. Looks like flag is cleared on wrong
> > > ifma.
> > >
> > > --
> > > Gleb Smirnoff
> > >
>



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