diff --git a/sys/netinet6/in6_mcast.c b/sys/netinet6/in6_mcast.c index f9ff10a302f3..3f948e14f68e 100644 --- a/sys/netinet6/in6_mcast.c +++ b/sys/netinet6/in6_mcast.c @@ -526,6 +526,9 @@ in6m_release_locked(struct in6_multi *inm) in6m_purge(inm); + /* Free state-change requests that might be queued. */ + _IF_DRAIN(&inm->in6m_scq); + free(inm, M_IP6MADDR); if_delmulti_ifma(ifma);