git: 9e83a6a556ed - main - Include new data sent in PRR calculation

Richard Scheffenegger rscheff at FreeBSD.org
Fri Feb 26 22:00:46 UTC 2021


The branch main has been updated by rscheff:

URL: https://cgit.FreeBSD.org/src/commit/?id=9e83a6a556ed8d9a2821de5d5f5c7d4b1292c694

commit 9e83a6a556ed8d9a2821de5d5f5c7d4b1292c694
Author:     Richard Scheffenegger <rscheff at FreeBSD.org>
AuthorDate: 2021-02-26 21:30:33 +0000
Commit:     Richard Scheffenegger <rscheff at FreeBSD.org>
CommitDate: 2021-02-26 21:31:58 +0000

    Include new data sent in PRR calculation
    
    Reviewed By:    #transport, kbowling
    MFC after:      3 days
    Sponsored by:   NetApp, Inc.
    Differential Revision:  https://reviews.freebsd.org/D28941
---
 sys/netinet/tcp_input.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index 6338b7491a7f..7b0987eed358 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -2595,7 +2595,8 @@ tcp_do_segment(struct mbuf *m, struct tcphdr *th, struct socket *so,
 								    imax(1, tp->snd_nxt - tp->snd_una);
 							snd_cnt = howmany((long)tp->sackhint.prr_delivered *
 							    tp->snd_ssthresh, tp->sackhint.recover_fs) -
-							    tp->sackhint.sack_bytes_rexmit;
+							    (tp->sackhint.sack_bytes_rexmit +
+							    (tp->snd_nxt - tp->snd_recover));
 						} else {
 							if (V_tcp_do_prr_conservative)
 								limit = tp->sackhint.prr_delivered -
@@ -3969,7 +3970,8 @@ tcp_prr_partialack(struct tcpcb *tp, struct tcphdr *th)
 			    imax(1, tp->snd_nxt - tp->snd_una);
 		snd_cnt = howmany((long)tp->sackhint.prr_delivered *
 			    tp->snd_ssthresh, tp->sackhint.recover_fs) -
-			    tp->sackhint.sack_bytes_rexmit;
+			    (tp->sackhint.sack_bytes_rexmit +
+			    (tp->snd_nxt - tp->snd_recover));
 	} else {
 		if (V_tcp_do_prr_conservative)
 			limit = tp->sackhint.prr_delivered -


More information about the dev-commits-src-all mailing list