Date: Thu, 10 Oct 2019 23:48:43 +0000 (UTC) From: Gleb Smirnoff <glebius@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r353422 - head/sys/netinet Message-ID: <201910102348.x9ANmhUv084430@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: glebius Date: Thu Oct 10 23:48:42 2019 New Revision: 353422 URL: https://svnweb.freebsd.org/changeset/base/353422 Log: The divert(4) module must always be running in network epoch, thus call to if_addr_rlock() isn't needed. Modified: head/sys/netinet/ip_divert.c Modified: head/sys/netinet/ip_divert.c ============================================================================== --- head/sys/netinet/ip_divert.c Thu Oct 10 23:47:14 2019 (r353421) +++ head/sys/netinet/ip_divert.c Thu Oct 10 23:48:42 2019 (r353422) @@ -231,10 +231,10 @@ divert_packet(struct mbuf *m, bool incoming) /* Sanity check */ M_ASSERTPKTHDR(m); + NET_EPOCH_ASSERT(); /* Find IP address for receive interface */ ifp = m->m_pkthdr.rcvif; - if_addr_rlock(ifp); CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if (ifa->ifa_addr->sa_family != AF_INET) continue; @@ -242,7 +242,6 @@ divert_packet(struct mbuf *m, bool incoming) ((struct sockaddr_in *) ifa->ifa_addr)->sin_addr; break; } - if_addr_runlock(ifp); } /* * Record the incoming interface name whenever we have one.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201910102348.x9ANmhUv084430>