Open
Description
Repro:
nix-shell --pure --argstr unikernel ./test/net/integration/tcp/ --run ./test.py
Some times during test.sh
runs the TCP test hangs here:
<vm> [ Machine ] Listing registered devices
<vm> |
<vm> +--+ NIC eth0
<vm> |
<vm> o
<vm> [ SystemLog ] Initializing System Log
<vm> Created @ 0x1fffffff0000 (63 kB)
<vm> Data @ 0x1fffffff0028 (65496 bytes)
<vm> [ Kernel ] Initializing RNG
<vm> [ Kernel ] Initializing plugins
<vm> [ Kernel ] Running service constructors
<vm> --------------------------------------------------------------------------------
<vm> ================================================================================
<vm> IncludeOS VERY_DIRTY (x86_64 / 64-bit)
<vm> +--> Running [ TCP test ]
<vm> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<vm> +--> WARNING: No good random source found: RDRAND/RDSEED instructions not available.
<vm> +--> To make this warning fatal, re-compile with FOR_PRODUCTION=ON.
<vm> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<vm> [ Network ] Creating stack for VirtioNet on eth0 (MTU=1500)
<vm> [ Inet ] Bringing up eth0 on CPU 0
<vm> [ Inet ] Network configured (c0:01:0a:00:00:2a)
<vm> IP: 10.0.0.44
<vm> Netmask: 255.255.255.0
<vm> Gateway: 10.0.0.1
<vm> DNS Server: 8.8.8.8
<vm> [ Inet6 ] Address configured fe80:0:0:0:e823:fcff:fef4:85bd/64
<vm> [ TEST ] Listeners and connections allocation.
<vm> [x] No (0) open ports (listening connections)
<vm> [x] No (0) active connections
<vm> [x] One or more open port
<vm> [x] Three or more open ports
<vm> IncludeOS TCP test
<vm> TEST1
* <test.py>: TEST1 triggered by VM
* <test.py>: connecting to [(<AddressFamily.AF_INET6: 10>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('fe80::e823:fcff:fef4:85bd', 8081, 0, 17))]
* <test.py>: closing socket. Received 900 bytes
<vm> [ Test 1 ] SMALL string (900)
<vm> [x] Received SMALL
<vm> [ Test 1 ] Succeeded, TEST2
* <test.py>: [ Test 1 ] Succeeded, TEST2 triggered by VM
* <test.py>: connecting to [(<AddressFamily.AF_INET6: 10>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('fe80::e823:fcff:fef4:85bd', 8082, 0, 17))]
* <test.py>: closing socket. Received 6400 bytes
<vm> [ Test 2 ] BIG string (6400)
<vm> [x] Received BIG
<vm> [ Test 2 ] Succeeded, TEST3
* <test.py>: [ Test 2 ] Succeeded, TEST3 triggered by VM
* <test.py>: connecting to [(<AddressFamily.AF_INET6: 10>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('fe80::e823:fcff:fef4:85bd', 8083, 0, 17))]