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

Update dependencies to latest #135

Merged
merged 2 commits into from Aug 3, 2022
Merged

Update dependencies to latest #135

merged 2 commits into from Aug 3, 2022

Conversation

balajiv113
Copy link
Contributor

Signed-off-by: Balaji Vijayakumar kuttibalaji.v6@gmail.com

Incorporates changes from #105

Signed-off-by: Balaji Vijayakumar <kuttibalaji.v6@gmail.com>
@balajiv113
Copy link
Contributor Author

Performance report

System Info
OS : Mac 12.5
VM : QEMU
MTU : 4000

Log

+ echo 'TCP: sending data'
TCP: sending data
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 LD_LIBRARY_PATH=. ./iperf3 -c host.crc.testing
Warning: Permanently added '[127.0.0.1]:2222' (ED25519) to the list of known hosts.
Connecting to host host.crc.testing, port 5201
[  4] local 192.168.127.2 port 57986 connected to 192.168.127.254 port 5201
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  4]   0.00-1.00   sec   248 MBytes  2.08 Gbits/sec    0    520 KBytes
[  4]   1.00-2.00   sec   281 MBytes  2.36 Gbits/sec    0    520 KBytes
[  4]   2.00-3.00   sec   271 MBytes  2.27 Gbits/sec    0    520 KBytes
[  4]   3.00-4.00   sec   289 MBytes  2.43 Gbits/sec    0    520 KBytes
[  4]   4.00-5.00   sec   228 MBytes  1.91 Gbits/sec    0    520 KBytes
[  4]   5.00-6.00   sec   318 MBytes  2.67 Gbits/sec    0    520 KBytes
[  4]   6.00-7.00   sec   257 MBytes  2.15 Gbits/sec    0    520 KBytes
[  4]   7.00-8.00   sec   279 MBytes  2.34 Gbits/sec    0    520 KBytes
[  4]   8.00-9.00   sec   271 MBytes  2.27 Gbits/sec    0    520 KBytes
[  4]   9.00-10.00  sec   245 MBytes  2.05 Gbits/sec    0    520 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec  2.62 GBytes  2.25 Gbits/sec    0             sender
[  4]   0.00-10.00  sec  2.62 GBytes  2.25 Gbits/sec                  receiver

iperf Done.
+ echo 'TCP: receiving data'
TCP: receiving data
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 LD_LIBRARY_PATH=. ./iperf3 -c host.crc.testing -R
Warning: Permanently added '[127.0.0.1]:2222' (ED25519) to the list of known hosts.
Connecting to host host.crc.testing, port 5201
Reverse mode, remote host host.crc.testing is sending
[  4] local 192.168.127.2 port 58504 connected to 192.168.127.254 port 5201
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec   195 MBytes  1.63 Gbits/sec
[  4]   1.00-2.00   sec   200 MBytes  1.68 Gbits/sec
[  4]   2.00-3.00   sec   170 MBytes  1.43 Gbits/sec
[  4]   3.00-4.00   sec   241 MBytes  2.02 Gbits/sec
[  4]   4.00-5.00   sec   238 MBytes  1.99 Gbits/sec
[  4]   5.00-6.00   sec   232 MBytes  1.95 Gbits/sec
[  4]   6.00-7.00   sec   202 MBytes  1.70 Gbits/sec
[  4]   7.00-8.00   sec   202 MBytes  1.69 Gbits/sec
[  4]   8.00-9.00   sec   200 MBytes  1.67 Gbits/sec
[  4]   9.00-10.00  sec   197 MBytes  1.65 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec  2.03 GBytes  1.74 Gbits/sec                  sender
[  4]   0.00-10.00  sec  2.03 GBytes  1.74 Gbits/sec                  receiver

iperf Done.
+ echo 'UDP: sending data'
UDP: sending data
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 LD_LIBRARY_PATH=. ./iperf3 -c host.crc.testing -u
Warning: Permanently added '[127.0.0.1]:2222' (ED25519) to the list of known hosts.
Connecting to host host.crc.testing, port 5201
[  4] local 192.168.127.2 port 51092 connected to 192.168.127.254 port 5201
[ ID] Interval           Transfer     Bandwidth       Total Datagrams
[  4]   0.00-1.00   sec   128 KBytes  1.04 Mbits/sec  16
[  4]   1.00-2.01   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   2.01-3.01   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   3.01-4.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   4.00-5.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   5.00-6.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   6.00-7.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   7.00-8.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   8.00-9.00   sec   128 KBytes  1.05 Mbits/sec  16
[  4]   9.00-10.00  sec   128 KBytes  1.05 Mbits/sec  16
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  4]   0.00-10.00  sec  1.25 MBytes  1.05 Mbits/sec  0.129 ms  0/160 (0%)
[  4] Sent 160 datagrams

iperf Done.
+ echo 'UDP: receiving data'
UDP: receiving data
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 LD_LIBRARY_PATH=. ./iperf3 -c host.crc.testing -R -u
Warning: Permanently added '[127.0.0.1]:2222' (ED25519) to the list of known hosts.
Connecting to host host.crc.testing, port 5201
Reverse mode, remote host host.crc.testing is sending
[  4] local 192.168.127.2 port 53723 connected to 192.168.127.254 port 5201
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  4]   0.00-1.00   sec   136 KBytes  1.11 Mbits/sec  36913158071.561 ms  0/17 (0%)
[  4]   1.00-2.00   sec   128 KBytes  1.05 Mbits/sec  13143820662.713 ms  0/16 (0%)
[  4]   2.00-3.00   sec   120 KBytes   983 Kbits/sec  4992186147.629 ms  0/15 (0%)
[  4]   3.00-4.01   sec   120 KBytes   978 Kbits/sec  1896094239.620 ms  0/15 (0%)
[  4]   4.01-5.00   sec   136 KBytes  1.12 Mbits/sec  632953229.938 ms  0/17 (0%)
[  4]   5.00-6.00   sec   128 KBytes  1.05 Mbits/sec  225378276.350 ms  0/16 (0%)
[  4]   6.00-7.00   sec   136 KBytes  1.11 Mbits/sec  75235663.859 ms  0/17 (0%)
[  4]   7.00-8.00   sec   120 KBytes   983 Kbits/sec  28575438.579 ms  0/15 (0%)
[  4]   8.00-9.00   sec   128 KBytes  1.05 Mbits/sec  10174974.667 ms  0/16 (0%)
[  4]   9.00-10.00  sec   136 KBytes  1.11 Mbits/sec  3396605.112 ms  0/17 (0%)
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  4]   0.00-10.00  sec  1.26 MBytes  1.05 Mbits/sec  3396605.112 ms  0/161 (0%)
[  4] Sent 161 datagrams

iperf Done.
+ kill 10869
+ echo 'Testing forwarder with a server running in the VM'
Testing forwarder with a server running in the VM
+ curl --unix-socket /tmp/gvproxy-api.sock http:/unix/services/forwarder/expose -X POST '-d{"local":":5201", "protocol": "udp", "remote": "192.168.127.2:5201"}'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    68    0     0  100    68      0  70030 --:--:-- --:--:-- --:--:-- 68000
+ curl --unix-socket /tmp/gvproxy-api.sock http:/unix/services/forwarder/expose -X POST '-d{"local":":5201", "protocol": "tcp", "remote": "192.168.127.2:5201"}'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    68    0     0  100    68      0  71729 --:--:-- --:--:-- --:--:-- 68000
+ sleep 1
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 LD_LIBRARY_PATH=. ./iperf3 -s
+ echo 'TCP: sending data'
TCP: sending data
+ iperf3 -c 127.0.0.1
Connecting to host 127.0.0.1, port 5201
[  5] local 127.0.0.1 port 51104 connected to 127.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   197 MBytes  1.65 Gbits/sec
[  5]   1.00-2.00   sec   180 MBytes  1.51 Gbits/sec
[  5]   2.00-3.00   sec   190 MBytes  1.60 Gbits/sec
[  5]   3.00-4.00   sec   172 MBytes  1.44 Gbits/sec
[  5]   4.00-5.00   sec   122 MBytes  1.02 Gbits/sec
[  5]   5.00-6.00   sec   181 MBytes  1.52 Gbits/sec
[  5]   6.00-7.00   sec   174 MBytes  1.46 Gbits/sec
[  5]   7.00-8.00   sec   179 MBytes  1.51 Gbits/sec
[  5]   8.00-9.00   sec  46.7 MBytes   391 Mbits/sec
[  5]   9.00-10.00  sec   121 MBytes  1.02 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec  1.53 GBytes  1.31 Gbits/sec                  sender
[  5]   0.00-10.00  sec  1.53 GBytes  1.31 Gbits/sec                  receiver

iperf Done.
+ echo 'TCP: receiving data'
TCP: receiving data
+ iperf3 -c 127.0.0.1 -R
Connecting to host 127.0.0.1, port 5201
Reverse mode, remote host 127.0.0.1 is sending
[  5] local 127.0.0.1 port 51106 connected to 127.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   218 MBytes  1.83 Gbits/sec
[  5]   1.00-2.00   sec   172 MBytes  1.44 Gbits/sec
[  5]   2.00-3.00   sec   119 MBytes   997 Mbits/sec
[  5]   3.00-4.00   sec   183 MBytes  1.53 Gbits/sec
[  5]   4.00-5.00   sec   147 MBytes  1.23 Gbits/sec
[  5]   5.00-6.00   sec   193 MBytes  1.62 Gbits/sec
[  5]   6.00-7.00   sec   189 MBytes  1.58 Gbits/sec
[  5]   7.00-8.00   sec   186 MBytes  1.56 Gbits/sec
[  5]   8.00-9.00   sec   176 MBytes  1.47 Gbits/sec
[  5]   9.00-10.00  sec   175 MBytes  1.47 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.72 GBytes  1.48 Gbits/sec    0             sender
[  5]   0.00-10.00  sec  1.72 GBytes  1.47 Gbits/sec                  receiver

iperf Done.
+ echo 'UDP: sending data'
UDP: sending data
+ iperf3 -c 127.0.0.1 -u -l 9216
Connecting to host 127.0.0.1, port 5201
[  5] local 127.0.0.1 port 64370 connected to 127.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate         Total Datagrams
[  5]   0.00-1.00   sec   135 KBytes  1.11 Mbits/sec  15
[  5]   1.00-2.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   2.00-3.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   3.00-4.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   4.00-5.00   sec   135 KBytes  1.11 Mbits/sec  15
[  5]   5.00-6.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   6.00-7.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   7.00-8.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   8.00-9.00   sec   126 KBytes  1.03 Mbits/sec  14
[  5]   9.00-10.00  sec   135 KBytes  1.11 Mbits/sec  15
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-10.00  sec  1.26 MBytes  1.05 Mbits/sec  0.000 ms  0/143 (0%)  sender
[  5]   0.00-10.00  sec  1.26 MBytes  1.05 Mbits/sec  10853305.758 ms  0/143 (0%)  receiver

iperf Done.
+ echo 'UDP: receiving data'
UDP: receiving data
+ iperf3 -c 127.0.0.1 -R -u -l 9216
Connecting to host 127.0.0.1, port 5201
Reverse mode, remote host 127.0.0.1 is sending
[  5] local 127.0.0.1 port 50465 connected to 127.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-1.01   sec   117 KBytes   954 Kbits/sec  0.048 ms  0/13 (0%)
[  5]   1.01-2.00   sec   135 KBytes  1.11 Mbits/sec  0.102 ms  0/15 (0%)
[  5]   2.00-3.00   sec   126 KBytes  1.03 Mbits/sec  0.094 ms  0/14 (0%)
[  5]   3.00-4.00   sec   126 KBytes  1.03 Mbits/sec  0.111 ms  0/14 (0%)
[  5]   4.00-5.01   sec   126 KBytes  1.03 Mbits/sec  0.114 ms  0/14 (0%)
[  5]   5.01-6.01   sec   126 KBytes  1.03 Mbits/sec  0.115 ms  0/14 (0%)
[  5]   6.01-7.00   sec   135 KBytes  1.11 Mbits/sec  0.081 ms  0/15 (0%)
[  5]   7.00-8.00   sec   126 KBytes  1.03 Mbits/sec  0.104 ms  0/14 (0%)
[  5]   8.00-9.00   sec   126 KBytes  1.03 Mbits/sec  0.085 ms  0/14 (0%)
[  5]   9.00-10.00  sec   126 KBytes  1.03 Mbits/sec  0.263 ms  0/14 (0%)
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-10.00  sec  1.26 MBytes  1.05 Mbits/sec  0.000 ms  0/141 (0%)  sender
[  5]   0.00-10.00  sec  1.24 MBytes  1.04 Mbits/sec  0.263 ms  0/141 (0%)  receiver

iperf Done.
+ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ../tmp/id_test -p 2222 test@127.0.0.1 pkill iperf3
Warning: Permanently added '[127.0.0.1]:2222' (ED25519) to the list of known hosts.
+ curl --unix-socket /tmp/gvproxy-api.sock http:/unix/services/forwarder/unexpose -X POST '-d{"local":":5201", "protocol": "udp"}'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    36    0     0  100    36      0  46511 --:--:-- --:--:-- --:--:-- 36000
+ curl --unix-socket /tmp/gvproxy-api.sock http:/unix/services/forwarder/unexpose -X POST '-d{"local":":5201", "protocol": "tcp"}'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0time="2022-07-25T08:57:58+05:30" level=error msg="accept tcp [::]:5201: use of closed network connection"
100    36    0     0  100    36      0  37500 --:--:-- --:--:-- --:--:-- 36000

------------------------------

@lsm5
Copy link
Member

lsm5 commented Jul 26, 2022

@balajiv113 @cfergeau thanks a lot for this PR. The gvisor dependency bump is a requirement for us to unblock podman rpm builds on Fedora, so the sooner we have it, the better. Please let me know if I can help out in anyway with speeding up this PR merge.

Signed-off-by: Balaji Vijayakumar <kuttibalaji.v6@gmail.com>
@BalajiVijayakumar1195
Copy link

Fixed the lint issue.
But on tests failure, it is working fine for me in my local mac.

Not sure if it has to do something with the CI run.

@baude
Copy link
Member

baude commented Aug 1, 2022

/approve

@baude
Copy link
Member

baude commented Aug 1, 2022

@guillaumerose @gbraad can one of you please merge this?

@gbraad
Copy link
Member

gbraad commented Aug 2, 2022

@anjannath can you verify?

@baude, Guillaume does not work on this anymore.

Copy link
Member

@gbraad gbraad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Aug 3, 2022

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: balajiv113, baude, gbraad

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@gbraad gbraad merged commit fdc231a into containers:main Aug 3, 2022
@gbraad
Copy link
Member

gbraad commented Aug 3, 2022

@balajiv113 @baude Shall I also create a new release?

@balajiv113
Copy link
Contributor Author

@gbraad - yes we can.

But the tests failed again with unexpected EOF on main. But, This is not happening for me locally. Even in CI, after retry it was successful before.

@balajiv113
Copy link
Contributor Author

I think this is the issue, https://github.com/containers/gvisor-tap-vsock/blob/main/test/suite_test.go#L224

Once we are able to run whoami we are trying to read 500characters atleast for checking panic. For some reason even after ssh is success the qcon.log doesn't contain booting logs so its less than 500 character.

@gbraad
Copy link
Member

gbraad commented Aug 3, 2022

at the moment unable to verify or check this (PTO-mode for most of the week)

@gbraad
Copy link
Member

gbraad commented Aug 17, 2022

@balajiv113 any update on this?

@balajiv113
Copy link
Contributor Author

@gbraad
Unfortunately no, couldn't reproduce this locally.

Around next week. I will try to put down a alternate solution than reading 500 character and see if CI is happy with that

@balajiv113
Copy link
Contributor Author

@gbraad
Just checked the CI. Tests looks fine only.
In latest PR merge there are some lint issues i believe. That's why actions are failing

@n1hility
Copy link
Member

n1hility commented Aug 17, 2022

I think this is the issue, https://github.com/containers/gvisor-tap-vsock/blob/main/test/suite_test.go#L224

Once we are able to run whoami we are trying to read 500characters atleast for checking panic. For some reason even after ssh is success the qcon.log doesn't contain booting logs so its less than 500 character.

@balajiv113 if you check here (https://github.com/containers/gvisor-tap-vsock/blob/main/test/suite_test.go#L121) , it’s the reverse. Only if the ssh connection fails it checks the qemu console log for a panic. There is a spurious panic issue that can occur on Mac when the process is run from a background process outside of the UI process tree (unless you set a launchd config that confers similar process priority) The former is the case with the GitHub agent, (which we don’t control the launchd config of) so we need a mechanism to retry a kernel boot. Otherwise CI will intermittently fail.

@gbraad
Copy link
Member

gbraad commented Aug 19, 2022

@n1hility this might need additional work. Either we choose to disable this specific test and allow the CI to be green (fix soon after), fix the issue and hold further merges until fixed, or choose to ignore this for 'now'.

@n1hility
Copy link
Member

@gbraad its likely just a race in the suite, so probably fine to ignore. Alternatively my suggestion would be to just have the code ignore ErrUnexpectedEOF. I just wanted to point out that if the whole section is disabled CI we might see panics come back which result tin CI hangs.

@gbraad
Copy link
Member

gbraad commented Aug 19, 2022

In that case, the testcase can be dropped or adjusted for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants