git: d7955cc0ffdf - main - tcp: HPTS performance enhancements

Li-Wen Hsu lwhsu at freebsd.org
Thu Jul 8 02:30:18 UTC 2021


On Wed, Jul 7, 2021 at 7:22 PM Randall Stewart <rrs at freebsd.org> wrote:
>
> The branch main has been updated by rrs:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=d7955cc0ffdf9fb58013245a6f181c757574ea0a
>
> commit d7955cc0ffdf9fb58013245a6f181c757574ea0a
> Author:     Randall Stewart <rrs at FreeBSD.org>
> AuthorDate: 2021-07-06 19:23:22 +0000
> Commit:     Randall Stewart <rrs at FreeBSD.org>
> CommitDate: 2021-07-07 11:22:35 +0000
>
>     tcp: HPTS performance enhancements
>
>     HPTS drives both rack and bbr, and yet there have been many complaints
>     about performance. This bit of work restructures hpts to help reduce CPU
>     overhead. It does this by now instead of relying on the timer/callout to
>     drive it instead use user return from a system call as well as lro flushes
>     to drive hpts. The timer becomes a backstop that dynamically adjusts
>     based on how "late" we are.
>
>     Reviewed by: tuexen, glebius
>     Sponsored by: Netflix Inc.
>     Differential Revision: https://reviews.freebsd.org/D31083
> ---
>  sys/kern/subr_trap.c          |   10 +
>  sys/netinet/in_pcb.h          |    4 +-
>  sys/netinet/tcp_hpts.c        | 1309 +++++++++++++++++++++++++----------------
>  sys/netinet/tcp_hpts.h        |   99 +++-
>  sys/netinet/tcp_lro.c         |   28 +-
>  sys/netinet/tcp_lro.h         |   10 +-
>  sys/netinet/tcp_stacks/bbr.c  |    6 +-
>  sys/netinet/tcp_stacks/rack.c |   22 +-
>  8 files changed, 931 insertions(+), 557 deletions(-)

Hi Randall.

I think this breaks 32 bits platforms builds, for example:

https://ci.freebsd.org/job/FreeBSD-main-i386-LINT/18214/console
https://ci.freebsd.org/job/FreeBSD-main-armv7-LINT/1192/console

Can you help check this? Thanks!

Best,
Li-Wen


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