git: d1de2b05a001 - main - tcp: Rename rfc6675_pipe to sack.revised, and enable by default
Peter Holm
pho at freebsd.org
Sun Apr 18 17:27:48 UTC 2021
On Sun, Apr 18, 2021 at 02:54:38PM +0000, Scheffenegger, Richard wrote:
> It appears that the SACK scoreboard ended up unordered (the assumption/invariant is for it to remain sorted for efficient processing):
>
> tp->snd_holes
> 0xfffff80726393c00 3958849524 3958865856
> 0xfffff80726393bc0 3958816860 3958849524
> 0xfffff80726393ae0 3959110836 3959192496
>
> The 2nd entry has lower sequence numbers than the first. The KASSERT happened, when this hole was scheduled for retransmission, but snd_una already acknowledged it by that time...
>
> It seems the reproduction is stable, I will look into where this happens...
>
OK. Let me know if there is anything I can help with.
- Peter
> Richard Scheffenegger
>
>
> -----Ursprüngliche Nachricht-----
> Von: owner-src-committers at freebsd.org <owner-src-committers at freebsd.org> Im Auftrag von Peter Holm
> Gesendet: Sonntag, 18. April 2021 11:04
> An: Scheffenegger, Richard <Richard.Scheffenegger at netapp.com>
> Cc: Richard Scheffenegger <rscheff at freebsd.org>; src-committers at freebsd.org; dev-commits-src-all at freebsd.org; dev-commits-src-main at freebsd.org; transport at freebsd.org
> Betreff: Re: git: d1de2b05a001 - main - tcp: Rename rfc6675_pipe to sack.revised, and enable by default
>
> NetApp Security WARNING: This is an external email. Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
>
>
>
> On Sun, Apr 18, 2021 at 08:30:20AM +0000, Scheffenegger, Richard wrote:
> > Hi Peter,
> >
> > Hmm... the panic appears to be due to a stale entry in the sack scoreboard - a hole not having been closed up to snd_una...
> >
> > Unlikely that this was solely due to this change by itself.
> >
> > Can I get the vmcore and kernel.debug for a close investigation?
> >
>
> Sure. Uploaded to: https://people.freebsd.org/~pho/kernel.vmcore.320-mercat1.tar
>
> - Peter
>
> >
> > Richard Scheffenegger
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Peter Holm <pho at freebsd.org>
> > Gesendet: Sonntag, 18. April 2021 08:01
> > An: Richard Scheffenegger <rscheff at freebsd.org>
> > Cc: src-committers at freebsd.org; dev-commits-src-all at freebsd.org;
> > dev-commits-src-main at freebsd.org
> > Betreff: Re: git: d1de2b05a001 - main - tcp: Rename rfc6675_pipe to
> > sack.revised, and enable by default
> >
> > NetApp Security WARNING: This is an external email. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> >
> >
> >
> >
> > On Sat, Apr 17, 2021 at 01:50:25PM +0000, Richard Scheffenegger wrote:
> > > The branch main has been updated by rscheff:
> > >
> > > URL:
> > > https://cgit.FreeBSD.org/src/commit/?id=d1de2b05a001d3d80f633f576f49
> > > 09
> > > c2686dda3d
> > >
> > > commit d1de2b05a001d3d80f633f576f4909c2686dda3d
> > > Author: Richard Scheffenegger <rscheff at FreeBSD.org>
> > > AuthorDate: 2021-04-17 12:59:30 +0000
> > > Commit: Richard Scheffenegger <rscheff at FreeBSD.org>
> > > CommitDate: 2021-04-17 12:59:45 +0000
> > >
> > > tcp: Rename rfc6675_pipe to sack.revised, and enable by default
> > >
> > > As full support of RFC6675 is in place, deprecating
> > > net.inet.tcp.rfc6675_pipe and enabling by default
> > > net.inet.tcp.sack.revised.
> > >
> > > Reviewed By: #transport, kbowling, rrs
> > > Sponsored by: NetApp, Inc.
> > > Differential Revision: https://reviews.freebsd.org/D28702
> > > ---
> > > share/man/man4/tcp.4 | 25 ++++++++++++++-----------
> > > sys/netinet/cc/cc_cubic.c | 2 +-
> > > sys/netinet/cc/cc_htcp.c | 2 +-
> > > sys/netinet/cc/cc_newreno.c | 2 +-
> > > sys/netinet/tcp_input.c | 11 +++--------
> > > sys/netinet/tcp_sack.c | 12 +++++++++---
> > > sys/netinet/tcp_var.h | 4 ++--
> > > 7 files changed, 31 insertions(+), 27 deletions(-)
> > >
> > > diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4 index
> > > d01505e58427..cbb8021226fe 100644
> > > --- a/share/man/man4/tcp.4
> >
> > Could this panic be related?
> >
> > 20210418 07:19:59 all (204/751): jumbo.sh
> > panic: tcp_output: sack block to the left of una : -293976 cpuid = 3
> > time = 1618723234
> > KDB: stack backtrace:
> > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame
> > 0xfffffe00e49b0550
> > vpanic() at vpanic+0x181/frame 0xfffffe00e49b05a0
> > panic() at panic+0x43/frame 0xfffffe00e49b0600
> > tcp_output() at tcp_output+0x27dc/frame 0xfffffe00e49b07c0
> > tcp_do_segment() at tcp_do_segment+0x32a3/frame 0xfffffe00e49b08b0
> > tcp_input() at tcp_input+0xbd5/frame 0xfffffe00e49b0a10
> > ip_input() at ip_input+0x194/frame 0xfffffe00e49b0aa0
> > swi_net() at swi_net+0x1a1/frame 0xfffffe00e49b0b20
> > ithread_loop() at ithread_loop+0x279/frame 0xfffffe00e49b0bb0
> > fork_exit() at fork_exit+0x80/frame 0xfffffe00e49b0bf0
> > fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00e49b0bf0
> > --- trap 0, rip = 0, rsp = 0, rbp = 0 ---
> >
> > https://people.freebsd.org/~pho/stress/log/log0094.txt
> >
> > - Peter
More information about the freebsd-transport
mailing list