Page MenuHomeFreeBSD

D20740.id64871.diff
No OneTemporary

D20740.id64871.diff

Index: head/sys/netinet/in_mcast.c
===================================================================
--- head/sys/netinet/in_mcast.c
+++ head/sys/netinet/in_mcast.c
@@ -1268,7 +1268,9 @@
if (error) {
CTR2(KTR_IGMPV3, "%s: dropping ref on %p", __func__, inm);
+ IF_ADDR_WLOCK(ifp);
inm_release_deferred(inm);
+ IF_ADDR_WUNLOCK(ifp);
} else {
*pinm = inm;
}
@@ -2247,7 +2249,9 @@
if (is_new && imf) {
if (imf->imf_inm != NULL) {
IN_MULTI_LIST_LOCK();
+ IF_ADDR_WLOCK(ifp);
inm_release_deferred(imf->imf_inm);
+ IF_ADDR_WUNLOCK(ifp);
IN_MULTI_LIST_UNLOCK();
}
ip_mfilter_free(imf);

File Metadata

Mime Type
text/plain
Expires
Fri, Mar 20, 3:03 AM (6 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29994169
Default Alt Text
D20740.id64871.diff (627 B)

Event Timeline