Date: Tue, 21 Aug 2018 14:20:47 -0700 From: Gleb Smirnoff <glebius@freebsd.org> To: Matt Macy <mmacy@freebsd.org> Cc: 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: <20180821212047.GM27633@FreeBSD.org> In-Reply-To: <201808152023.w7FKN9LL055254@repo.freebsd.org> References: <201808152023.w7FKN9LL055254@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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?20180821212047.GM27633>