The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=ff9dbbc2c6f4f4c06c8e3f0aa790a647b7788c73
commit ff9dbbc2c6f4f4c06c8e3f0aa790a647b7788c73 Author: Michael Tuexen <[email protected]> AuthorDate: 2025-11-07 15:27:56 +0000 Commit: Michael Tuexen <[email protected]> CommitDate: 2025-11-10 19:56:34 +0000 tcp: improve comments in the syncache code Add a comment explaining why syncache entries are dropped and fix a typo in a comment. Reviewed by: rrs, glebius Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D53564 (cherry picked from commit 17fb082104ee281365b72bd5135604cea5051df2) --- sys/netinet/tcp_syncache.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index fa7035771714..6c072e0fec38 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -535,6 +535,10 @@ syncache_timer(void *xsch) TCPSTAT_INC(tcps_sndtotal); TCPSTAT_INC(tcps_sc_retransmitted); } else { + /* + * Most likely we are memory constrained, so free + * resources. + */ syncache_drop(sc, sch); TCPSTAT_INC(tcps_sc_dropped); } @@ -734,7 +738,7 @@ syncache_unreach(struct in_conninfo *inc, tcp_seq th_seq, uint16_t port) goto done; /* - * If we've rertransmitted 3 times and this is our second error, + * If we've retransmitted 3 times and this is our second error, * we remove the entry. Otherwise, we allow it to continue on. * This prevents us from incorrectly nuking an entry during a * spurious network outage. @@ -1562,6 +1566,10 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, TCPSTAT_INC(tcps_sndacks); TCPSTAT_INC(tcps_sndtotal); } else { + /* + * Most likely we are memory constrained, so free + * resources. + */ syncache_drop(sc, sch); TCPSTAT_INC(tcps_sc_dropped); } @@ -1747,6 +1755,9 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, TCPSTAT_INC(tcps_sndacks); TCPSTAT_INC(tcps_sndtotal); } else { + /* + * Most likely we are memory constrained, so free resources. + */ if (sc != &scs) syncache_free(sc); TCPSTAT_INC(tcps_sc_dropped);
