Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gnrc_icmpv6_echo: flood-pinging another node leads to leaks in own packet buffer #12565

Open
miri64 opened this issue Oct 24, 2019 · 7 comments
Assignees
Labels
Area: network Area: Networking Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)

Comments

@miri64
Copy link
Member

miri64 commented Oct 24, 2019

Description

When flood-pinging another node, some received echo replies might get stuck in the packet buffer

Steps to reproduce the issue

Start two native instances of tests/gnrc_udp (for gnrc_pktbuf_cmd) and flood-ping one from the other. See RIOT-OS/Release-Specs#142 (comment) for a detailed analysis

$ PORT=tap0 make -C tests/gnrc_udp all term
> ifconfig
--- different terminal
$ PORT=tap1 make -C tests/gnrc_udp all term
ping6 -s 1452 -i 0 -c 500000 '<link-local address of tap0 instance>"

Expected results

The packet buffer should be empty on both nodes afterwards.

Actual results

The packet buffer on the tap1 instance is filled with echo replies
> pktbuf
pktbuf
packet buffer: first byte: 0x565b9d60, last byte: 0x565bbd60 (size: 8192)
  position of last byte used: 8000
=========== chunk   0 (0x565b9d60 size:   96) ===========
00000000  A8  9D  5B  56  E8  AF  5B  56  B4  05  00  00  01  00  00  00
00000010  03  00  00  00  00  00  00  00  00  00  00  00  90  9D  5B  56
00000020  14  00  00  00  01  00  00  00  FF  FF  FF  FF  3A  40  FE  80
00000030  06  06  05  00  00  00  00  00  5A  ED  47  3B  43  7F  4E  58
00000040  F0  A5  07  5E  00  00  4C  58  78  9D  5B  56  C0  AF  5B  56
00000050  28  00  00  00  01  00  00  00  01  00  00  00  53  53  53  53
~ unused: 0x565b9dc0 (next: 0x565ba3a0, size: 1456) ~
=========== chunk   1 (0x565ba370 size:   48) ===========
00000000  88  A3  5B  56  08  AA  5B  56  B4  05  00  00  01  00  00  00
00000010  03  00  00  00  53  53  53  53  B0  A3  5B  56  E0  A9  5B  56
00000020  28  00  00  00  01  00  00  00  01  00  00  00  3A  40  FE  80
~ unused: 0x565ba3a0 (next: 0x565ba3c8, size:   16) ~
=========== chunk   2 (0x565ba3b0 size:   24) ===========
00000000  00  00  00  00  F0  A3  5B  56  14  00  00  00  01  00  00  00
00000010  FF  FF  FF  FF  00  00  00  00
~ unused: 0x565ba3c8 (next: 0x565ba468, size:   40) ~
=========== chunk   3 (0x565ba3f0 size:  120) ===========
00000000  06  06  05  00  00  00  00  00  5A  ED  47  3B  43  7F  4E  58
00000010  F0  A5  07  5E  3A  40  FE  80  20  A4  5B  56  D8  B5  5B  56
00000020  B4  05  00  00  01  00  00  00  03  00  00  00  00  00  4C  58
00000030  38  A4  5B  56  B0  B5  5B  56  28  00  00  00  01  00  00  00
00000040  01  00  00  00  53  53  53  53  00  00  00  00  50  A4  5B  56
00000050  14  00  00  00  01  00  00  00  FF  FF  FF  FF  53  53  53  53
00000060  06  06  05  00  00  00  00  00  5A  ED  47  3B  43  7F  4E  58
00000070  F0  A5  07  5E  53  53  53  53
~ unused: 0x565ba468 (next: 0x565bb5a0, size: 1400) ~
=========== chunk   4 (0x565ba9e0 size: 3008) ===========
00000000  60  00  00  00  05  B4  3A  40  FE  80  00  00  00  00  00  00
00000010  58  ED  47  FF  FE  3B  43  7F  FE  80  00  00  00  00  00  00
00000020  4C  58  F0  FF  FE  A5  07  5E  81  00  C3  8A  F1  FD  26  DC
00000030  92  E7  3F  17  53  53  53  53  53  53  53  53  53  53  53  53
00000040  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000050  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000060  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000070  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000080  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000090  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000100  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000110  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000120  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000130  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000140  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000150  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000160  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000170  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000180  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000190  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000200  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000210  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000220  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000230  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000240  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000250  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000260  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000270  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000280  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000290  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000300  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000310  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000320  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000330  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000340  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000350  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000360  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000370  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000380  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000390  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000400  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000410  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000420  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000430  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000440  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000450  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000460  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000470  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000480  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000490  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000500  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000510  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000520  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000530  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000540  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000550  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000560  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000570  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000580  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000590  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005D0  53  53  53  53  53  53  53  53  53  53  53  53  00  00  00  00
000005E0  60  00  00  00  05  B4  3A  40  FE  80  00  00  00  00  00  00
000005F0  58  ED  47  FF  FE  3B  43  7F  FE  80  00  00  00  00  00  00
00000600  4C  58  F0  FF  FE  A5  07  5E  81  00  16  3B  F1  FD  CF  3E
00000610  1D  D0  B9  1B  53  53  53  53  53  53  53  53  53  53  53  53
00000620  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000630  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000640  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000650  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000660  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000670  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000680  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000690  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000006F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000700  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000710  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000720  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000730  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000740  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000750  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000760  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000770  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000780  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000790  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000007F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000800  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000810  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000820  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000830  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000840  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000850  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000860  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000870  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000880  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000890  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000008F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000900  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000910  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000920  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000930  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000940  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000950  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000960  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000970  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000980  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000990  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000009F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A00  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A10  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A20  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A30  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A40  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A50  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A60  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A70  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A80  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000A90  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AA0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AB0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AC0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AD0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AE0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000AF0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B00  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B10  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B20  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B30  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B40  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B50  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B60  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B70  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B80  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000B90  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000BA0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000BB0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
~ unused: 0x565bb5a0 (next: 0x565bbb90, size:   16) ~
=========== chunk   5 (0x565bb5b0 size: 1504) ===========
00000000  60  00  00  00  05  B4  3A  40  FE  80  00  00  00  00  00  00
00000010  58  ED  47  FF  FE  3B  43  7F  FE  80  00  00  00  00  00  00
00000020  4C  58  F0  FF  FE  A5  07  5E  81  00  6D  E4  F1  FD  BD  67
00000030  DA  01  B7  17  53  53  53  53  53  53  53  53  53  53  53  53
00000040  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000050  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000060  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000070  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000080  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000090  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000000F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000100  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000110  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000120  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000130  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000140  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000150  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000160  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000170  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000180  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000190  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000001F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000200  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000210  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000220  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000230  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000240  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000250  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000260  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000270  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000280  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000290  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000002F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000300  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000310  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000320  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000330  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000340  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000350  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000360  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000370  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000380  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000390  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000003F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000400  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000410  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000420  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000430  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000440  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000450  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000460  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000470  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000480  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000490  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004E0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000004F0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000500  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000510  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000520  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000530  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000540  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000550  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000560  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000570  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000580  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
00000590  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005A0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005B0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005C0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
000005D0  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53  53
~ unused: 0x565bbb90 (next: (nil), size:  464) ~

Versions

Tested with 2019.10-devel, 2019.10-RC2, and 45ec766 (the commit that introduced the new ping6 implementation. All show this behavior, so I believe this is also behaving like this on master.

@miri64 miri64 added Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors) Area: network Area: Networking labels Oct 24, 2019
@miri64 miri64 added this to the Release 2019.10 milestone Oct 24, 2019
@miri64 miri64 self-assigned this Oct 24, 2019
@miri64
Copy link
Member Author

miri64 commented Oct 24, 2019

BTW: when flood pinging from a native node to the Linux host, I was reliably able to freeze up my Linux machine if I were other things on the side (did not test without doing anything) 😳

@fjmolinas
Copy link
Contributor

@miri64 have there been any updates on this issue?

@miri64
Copy link
Member Author

miri64 commented Jan 10, 2020

No.

@Chamaeleon-
Copy link
Contributor

Interesting side effect:
This bug seams to produce an underflow on packet loss possibly due to the leftover packets in the buffer.

2020-06-30 15:41:31,042 # ping6 ff02::1 -c 5
[...]
2020-06-30 15:41:34,069 # --- ff02::1 PING statistics ---
2020-06-30 15:41:34,069 # 4 packets transmitted, 5 packets received, 59 duplicates, 1073741799% packet loss
2020-06-30 15:41:34,070 # round-trip min/avg/max = 0.987/440.742/9363.049 ms

(3rd ping of this kind in a row in a mesh with 25 native nodes made by desvirt)

@fjmolinas
Copy link
Contributor

Interesting side effect:
This bug seams to produce an underflow on packet loss possibly due to the leftover packets in the buffer.

2020-06-30 15:41:31,042 # ping6 ff02::1 -c 5
[...]
2020-06-30 15:41:34,069 # --- ff02::1 PING statistics ---
2020-06-30 15:41:34,069 # 4 packets transmitted, 5 packets received, 59 duplicates, 1073741799% packet loss
2020-06-30 15:41:34,070 # round-trip min/avg/max = 0.987/440.742/9363.049 ms

(3rd ping of this kind in a row in a mesh with 25 native nodes made by desvirt)

That seems like an easier way of replicating the bug as well.

@Chamaeleon-
Copy link
Contributor

The precise network setup is made with desvirts topologycreator running on a Ubuntu 18.04 LTS Notebook.
./topology_creator -s 25 -t mesh -n riot_native -e ./gnrc_networking.elf
Seams to me like it triggers the bug every time?

@miri64
Copy link
Member Author

miri64 commented Jul 16, 2020

After some more debugging I was able to discern that the packets getting lost this way are stuck in the neighbor address resolution packet queue and get stuck there because of the neighbor fails this check every time somehow.

uint32_t next_ns = _evtimer_lookup(nbr,
GNRC_IPV6_NIB_SND_MC_NS);
assert(netif != NULL);
gnrc_netif_acquire(netif);
if (next_ns > netif->ipv6.retrans_time) {

Replacing the > with a >= improves the situation, but in rare cases still packets get stuck + I don't believe this is the correct solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: network Area: Networking Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)
Projects
None yet
Development

No branches or pull requests

5 participants