Date: Sun, 9 Oct 2016 21:35:12 +0000 (UTC) From: Julien Charbon <jch@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r306925 - stable/10/sys/netinet Message-ID: <201610092135.u99LZCTR024906@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jch Date: Sun Oct 9 21:35:12 2016 New Revision: 306925 URL: https://svnweb.freebsd.org/changeset/base/306925 Log: MFC r306443: Fix an issue with accept_filter introduced with r261242: As a side effect of r261242 when using accept_filter the first call to soisconnected() is done earlier in tcp_input() instead of tcp_do_segment() context. Restore the expected behaviour. Note: This call to soisconnected() seems to be extraneous in all cases (with or without accept_filter). Will be addressed in a separate commit. PR: 212920 Reported by: Alexey Tested by: Alexey, jch Sponsored by: Verisign, Inc. Modified: stable/10/sys/netinet/tcp_syncache.c Modified: stable/10/sys/netinet/tcp_syncache.c ============================================================================== --- stable/10/sys/netinet/tcp_syncache.c Sun Oct 9 21:28:56 2016 (r306924) +++ stable/10/sys/netinet/tcp_syncache.c Sun Oct 9 21:35:12 2016 (r306925) @@ -922,7 +922,9 @@ syncache_socket(struct syncache *sc, str INP_WUNLOCK(inp); - soisconnected(so); + if ((so->so_options & SO_ACCEPTFILTER) == 0) { + soisconnected(so); + } TCPSTAT_INC(tcps_accepts); return (so);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201610092135.u99LZCTR024906>