Date: Tue, 8 Oct 2019 16:59:17 +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: r353313 - head/sys/netinet Message-ID: <201910081659.x98GxHJA020192@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: glebius Date: Tue Oct 8 16:59:17 2019 New Revision: 353313 URL: https://svnweb.freebsd.org/changeset/base/353313 Log: Quickly plug another regression from r353292. Again, multicast locking needs lots of work... Reported by: pho Modified: head/sys/netinet/in_mcast.c Modified: head/sys/netinet/in_mcast.c ============================================================================== --- head/sys/netinet/in_mcast.c Tue Oct 8 16:45:56 2019 (r353312) +++ head/sys/netinet/in_mcast.c Tue Oct 8 16:59:17 2019 (r353313) @@ -2195,12 +2195,14 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt * Begin state merge transaction at IGMP layer. */ if (is_new) { + struct epoch_tracker et; + in_pcbref(inp); INP_WUNLOCK(inp); - + NET_EPOCH_ENTER(et); error = in_joingroup_locked(ifp, &gsa->sin.sin_addr, imf, &imf->imf_inm); - + NET_EPOCH_EXIT(et); INP_WLOCK(inp); if (in_pcbrele_wlocked(inp)) { error = ENXIO;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201910081659.x98GxHJA020192>