diff options
| author | Nick Banks <nickbanks@netflix.com> | 2025-10-13 20:27:43 +0000 |
|---|---|---|
| committer | Michael Tuexen <tuexen@FreeBSD.org> | 2025-10-13 20:27:43 +0000 |
| commit | 0eef2b4a002aace2ac9cc092bee6e10f6332f5ce (patch) | |
| tree | 1bdfb908a7e32d965de6200241b45f3c49ac21ef /sys | |
| parent | e79941bcb9d8758070a97d780582e097bb82396e (diff) | |
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/netinet/tcp_hpts.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/sys/netinet/tcp_hpts.c b/sys/netinet/tcp_hpts.c index fbab912b9a1f..133703a5ede1 100644 --- a/sys/netinet/tcp_hpts.c +++ b/sys/netinet/tcp_hpts.c @@ -1445,6 +1445,8 @@ no_one: * more slots (if we did not hit eno-bufs). */ hpts->p_prev_slot = hpts->p_cur_slot; + cts_last_run = cts; + cts = tcp_get_usecs(&tv); if (!from_callout || (loop_cnt > max_pacer_loops)) { /* * Something is serious slow we have @@ -1465,9 +1467,6 @@ no_one: goto no_run; } - cts_last_run = tcp_pace.cts_last_ran[hpts->p_num]; - tcp_pace.cts_last_ran[hpts->p_num] = cts = tcp_get_usecs(&tv); - hpts->p_cur_slot = cts_to_wheel(cts); if (!seen_endpoint) { /* We saw no endpoint but we may be looping */ @@ -1479,6 +1478,7 @@ no_one: goto again; } no_run: + tcp_pace.cts_last_ran[hpts->p_num] = cts; /* * Set flag to tell that we are done for * any slot input that happens during @@ -1511,9 +1511,8 @@ no_run: hpts, hpts->p_prev_slot, hpts->p_cur_slot, cts_last_run, cts, loop_cnt, wrap_loop_cnt)); - if (from_callout && tcp_hpts_different_slots(cts, cts_last_run)){ - cts_last_run = tcp_pace.cts_last_ran[hpts->p_num]; - tcp_pace.cts_last_ran[hpts->p_num] = cts = tcp_get_usecs(&tv); + if (from_callout && tcp_hpts_different_slots(cts, cts_last_run)) { + cts = tcp_get_usecs(&tv); hpts->p_cur_slot = cts_to_wheel(cts); counter_u64_add(hpts_loops, 1); goto again; |
