diff --git a/sys/netinet/in_mcast.c b/sys/netinet/in_mcast.c --- a/sys/netinet/in_mcast.c +++ b/sys/netinet/in_mcast.c @@ -263,6 +263,7 @@ if_ref(ifp); if (ifma->ifma_flags & IFMA_F_ENQUEUED) { CK_STAILQ_REMOVE(&ifp->if_multiaddrs, ifma, ifmultiaddr, ifma_link); + mbufq_drain(&inm->inm_scq); ifma->ifma_flags &= ~IFMA_F_ENQUEUED; } MCDPRINTF("removed ifma: %p from %s\n", ifma, ifp->if_xname);