Date: Thu, 30 May 2019 19:34:09 +0200 From: Michael Tuexen <tuexen@freebsd.org> To: John Baldwin <jhb@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r348435 - stable/11/sys/netinet Message-ID: <59773D8A-CD81-4059-BC74-0D0445F5915D@freebsd.org> In-Reply-To: <a2576e08-85b3-98e3-1cfa-89bbb1fe80aa@FreeBSD.org> References: <201905301632.x4UGWJSJ066904@repo.freebsd.org> <a2576e08-85b3-98e3-1cfa-89bbb1fe80aa@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 30. May 2019, at 19:20, John Baldwin <jhb@FreeBSD.org> wrote: >=20 > On 5/30/19 9:32 AM, Michael Tuexen wrote: >> Author: tuexen >> Date: Thu May 30 16:32:18 2019 >> New Revision: 348435 >> URL: https://svnweb.freebsd.org/changeset/base/348435 >>=20 >> Log: >> MFC r338053: >>=20 >> Don't expose the uptime via the TCP timestamps. >>=20 >> The TCP client side or the TCP server side when not using = SYN-cookies >> used the uptime as the TCP timestamp value. This patch uses in all >> cases an offset, which is the result of a keyed hash function taking >> the source and destination addresses and port numbers into account. >> The keyed hash function is the same a used for the initial TSN. >>=20 >> The use of >> VNET_DEFINE_STATIC(u_char, ts_offset_secret[32]); >> had to be replaced by >> VNET_DEFINE(u_char, ts_offset_secret[32]); >>=20 >> MFC r348290: >>=20 >> When an ACK segment as the third message of the three way handshake = is >> received and support for time stamps was negotiated in the = SYN/SYNACK >> exchange, perform the PAWS check and only expand the syn cache entry = if >> the check is passed. >> Without this check, endpoints may get stuck on the incomplete queue. >>=20 >> Reviewed by: jtl@, rrs@ >> Approved by: re (kib@)) >> Sponsored by: Netflix, Inc. >> Differential Revision: https://reviews.freebsd.org/D16636 >> Differential Revision: https://reviews.freebsd.org/D20374 >=20 > This broke the build on GCC platforms. >=20 >> Modified: stable/11/sys/netinet/tcp_subr.c >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- stable/11/sys/netinet/tcp_subr.c Thu May 30 16:11:20 2019 = (r348434) >> +++ stable/11/sys/netinet/tcp_subr.c Thu May 30 16:32:18 2019 = (r348435) >> @@ -226,6 +226,12 @@ VNET_DEFINE(uma_zone_t, sack_hole_zone); >>=20 >> VNET_DEFINE(struct hhook_head *, tcp_hhh[HHOOK_TCP_LAST+1]); >>=20 >> +VNET_DEFINE(u_char, ts_offset_secret[32]); >> +#define V_ts_offset_secret VNET(ts_offset_secret) >> + >> +static int tcp_default_fb_init(struct tcpcb *tp); >> +static void tcp_default_fb_fini(struct tcpcb *tp, int = tcb_is_purged); >> +static int tcp_default_handoff_ok(struct tcpcb *tp); >=20 > This is a mismerge. These three prototypes for tcp_default_* = shouldn't have > been added and these prototypes are causing the build breakage. (They = weren't > added in r338053 in HEAD but in an earlier change. This was probably = a merge > conflict during the MFC). >=20 > I think the fix is to just remove them. >=20 > cc -c -O -pipe -g -nostdinc -I. -I/usr/src/sys -D_KERNEL = -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -MD = -MF.depend.tcp_subr.o -MTtcp_subr.o -ffreestanding -fwrapv = -fstack-protector -gdwarf-2 -Wall -Wredundant-decls -Wnested-externs = -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline = -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions = -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas = -Wno-uninitialized -fno-common -fms-extensions -finline-limit=3D15000 = --param inline-unit-growth=3D100 --param large-function-growth=3D1000 = -mcmodel=3Dmedany -msoft-float -std=3Diso9899:1999 -Werror = /usr/src/sys/netinet/tcp_subr.c > cc1: warnings being treated as errors > /usr/src/sys/netinet/tcp_subr.c:232: warning: 'tcp_default_fb_init' = declared 'static' but never defined > /usr/src/sys/netinet/tcp_subr.c:233: warning: 'tcp_default_fb_fini' = declared 'static' but never defined > /usr/src/sys/netinet/tcp_subr.c:234: warning: 'tcp_default_handoff_ok' = declared 'static' but never defined > *** [tcp_subr.o] Error code 1 >=20 > make[2]: stopped in /usr/obj/sparc64.sparc64/usr/src/sys/GENERIC Fixed in https://svnweb.freebsd.org/changeset/base/348441 Best regards Michael >=20 > --=20 > John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?59773D8A-CD81-4059-BC74-0D0445F5915D>