Date: Thu, 29 Dec 2016 11:25:41 +0000 (UTC) From: Michael Tuexen <tuexen@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r310772 - stable/11/sys/netinet Message-ID: <201612291125.uBTBPfeE061657@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: tuexen Date: Thu Dec 29 11:25:41 2016 New Revision: 310772 URL: https://svnweb.freebsd.org/changeset/base/310772 Log: MFC r310547: Remove a KASSERT which is not always true. In case of the empty queue tp->snd_holes and tcp_sackhole_insert() failing due to memory shortage, tp->snd_holes will be empty. This problem was hit when stress tests where performed by pho. PR: 215513 Reported by: pho Tested by: pho Sponsored by: Netflix, Inc. Modified: stable/11/sys/netinet/tcp_sack.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/netinet/tcp_sack.c ============================================================================== --- stable/11/sys/netinet/tcp_sack.c Thu Dec 29 09:50:37 2016 (r310771) +++ stable/11/sys/netinet/tcp_sack.c Thu Dec 29 11:25:41 2016 (r310772) @@ -470,9 +470,6 @@ tcp_sack_doack(struct tcpcb *tp, struct tp->snd_fack = sblkp->end; sack_changed = 1; } - /* We must have at least one SACK hole in scoreboard. */ - KASSERT(!TAILQ_EMPTY(&tp->snd_holes), - ("SACK scoreboard must not be empty")); cur = TAILQ_LAST(&tp->snd_holes, sackhole_head); /* Last SACK hole. */ /* * Since the incoming sack blocks are sorted, we can process them
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201612291125.uBTBPfeE061657>