Adin Scannell
e5d9a4010b
Add ability to execute go.mod in gopath context.
2020-02-28 10:21:17 -08:00
Fabricio Voznika
0f8a9e3623
Change dup2 call to dup3
...
We changed syscalls to allow dup3 for ARM64.
Updates #1198
PiperOrigin-RevId: 297870816
2020-02-28 10:15:20 -08:00
Adin Scannell
c96bb4d2eb
Fix apt-get reliability issues.
...
This is frequently causing the core build scripts to fail. The core ubuntu
distribution will perform an auto-update at first start, which may cause the
lock file to be held. All apt-get commands may be done in a loop in order to
retry to avoid this issue. We may want to consider retrying other pieces, but
for now this should avoid the most frequent cause of build flakes.
PiperOrigin-RevId: 297704789
2020-02-27 15:36:13 -08:00
Fabricio Voznika
88f7369922
Log oom_score_adj value on error
...
Updates #1873
PiperOrigin-RevId: 297695241
2020-02-27 14:59:38 -08:00
Rahat Mahmood
aa9f8abaef
Implement automated marshalling for newtypes on arrays.
...
PiperOrigin-RevId: 297693838
2020-02-27 14:52:26 -08:00
gVisor bot
2cccf3d27b
Merge pull request #1346 from google:dependabot/bundler/benchmarks/workloads/ruby/puma-3.12.2
...
PiperOrigin-RevId: 297690302
2020-02-27 14:37:03 -08:00
Ian Gudger
c6bdc6b05b
Fix a race in TCP endpoint teardown and teardown the stack in tcp_test.
...
Call stack.Close on stacks when we are done with them in tcp_test. This avoids
leaking resources and reduces the test's flakiness when race/gotsan is enabled.
It also provides test coverage for the race also fixed in this change, which
can be reliably triggered with the stack.Close change (and without the other
changes) when race/gotsan is enabled.
The race was possible when calling Abort (via stack.Close) on an endpoint
processing a SYN segment as part of a passive connect.
Updates #1564
PiperOrigin-RevId: 297685432
2020-02-27 14:15:44 -08:00
gVisor bot
d9ee81183f
Merge of a369c88c0c
...
PiperOrigin-RevId: 297674924
2020-02-27 13:34:23 -08:00
dependabot[bot]
ff681b1747
Bump puma from 3.12.1 to 3.12.2 in /benchmarks/workloads/ruby
...
Bumps [puma](https://github.com/puma/puma ) from 3.12.1 to 3.12.2.
- [Release notes](https://github.com/puma/puma/releases )
- [Changelog](https://github.com/puma/puma/blob/master/History.md )
- [Commits](https://github.com/puma/puma/compare/v3.12.1...v3.12.2 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-02-27 20:52:41 +00:00
dependabot[bot]
0eafb7eb27
Bump puma from 3.12.0 to 3.12.2 in /benchmarks/workloads/ruby_template
...
Bumps [puma](https://github.com/puma/puma ) from 3.12.0 to 3.12.2.
<details>
<summary>Release notes</summary>
*Sourced from [puma's releases](https://github.com/puma/puma/releases ).*
> v3.12.1
</details>
<details>
<summary>Changelog</summary>
*Sourced from [puma's changelog](https://github.com/puma/puma/blob/master/History.md ).*
> ## 4.3.1 and 3.12.2 / 2019-12-05
>
> * Security
> * Fix: a poorly-behaved client could use keepalive requests to monopolize Puma's reactor and create a denial of service attack. CVE-2019-16770.
>
> ## 4.3.0 / 2019-11-07
>
> * Features
> * Strip whitespace at end of HTTP headers ([#2010 ](https://github-redirect.dependabot.com/puma/puma/issues/2010 ))
> * Optimize HTTP parser for JRuby ([#2012 ](https://github-redirect.dependabot.com/puma/puma/issues/2012 ))
> * Add SSL support for the control app and cli ([#2046 ](https://github-redirect.dependabot.com/puma/puma/issues/2046 ), [#2052 ](https://github-redirect.dependabot.com/puma/puma/issues/2052 ))
>
> * Bugfixes
> * Fix Errno::EINVAL when SSL is enabled and browser rejects cert ([#1564 ](https://github-redirect.dependabot.com/puma/puma/issues/1564 ))
> * Fix pumactl defaulting puma to development if an environment was not specified ([#2035 ](https://github-redirect.dependabot.com/puma/puma/issues/2035 ))
> * Fix closing file stream when reading pid from pidfile ([#2048 ](https://github-redirect.dependabot.com/puma/puma/issues/2048 ))
> * Fix a typo in configuration option `--extra_runtime_dependencies` ([#2050 ](https://github-redirect.dependabot.com/puma/puma/issues/2050 ))
>
> ## 4.2.1 / 2019-10-07
>
> * 3 bugfixes
> * Fix socket activation of systemd (pre-existing) unix binder files ([#1842 ](https://github-redirect.dependabot.com/puma/puma/issues/1842 ), [#1988 ](https://github-redirect.dependabot.com/puma/puma/issues/1988 ))
> * Deal with multiple calls to bind correctly ([#1986 ](https://github-redirect.dependabot.com/puma/puma/issues/1986 ), [#1994 ](https://github-redirect.dependabot.com/puma/puma/issues/1994 ), [#2006 ](https://github-redirect.dependabot.com/puma/puma/issues/2006 ))
> * Accepts symbols for `verify_mode` ([#1222 ](https://github-redirect.dependabot.com/puma/puma/issues/1222 ))
>
> ## 4.2.0 / 2019-09-23
>
> * 6 features
> * Pumactl has a new -e environment option and reads `config/puma/<environment>.rb` config files ([#1885 ](https://github-redirect.dependabot.com/puma/puma/issues/1885 ))
> * Semicolons are now allowed in URL paths (MRI only), useful for Angular or Redmine ([#1934 ](https://github-redirect.dependabot.com/puma/puma/issues/1934 ))
> * Allow extra dependencies to be defined when using prune_bundler ([#1105 ](https://github-redirect.dependabot.com/puma/puma/issues/1105 ))
> * Puma now reports the correct port when binding to port 0, also reports other listeners when binding to localhost ([#1786 ](https://github-redirect.dependabot.com/puma/puma/issues/1786 ))
> * Sending SIGINFO to any Puma worker now prints currently active threads and their backtraces ([#1320 ](https://github-redirect.dependabot.com/puma/puma/issues/1320 ))
> * Puma threads all now have their name set on Ruby 2.3+ ([#1968 ](https://github-redirect.dependabot.com/puma/puma/issues/1968 ))
> * 4 bugfixes
> * Fix some misbehavior with phased restart and externally SIGTERMed workers ([#1908 ](https://github-redirect.dependabot.com/puma/puma/issues/1908 ), [#1952 ](https://github-redirect.dependabot.com/puma/puma/issues/1952 ))
> * Fix socket closing on error ([#1941 ](https://github-redirect.dependabot.com/puma/puma/issues/1941 ))
> * Removed unnecessary SIGINT trap for JRuby that caused some race conditions ([#1961 ](https://github-redirect.dependabot.com/puma/puma/issues/1961 ))
> * Fix socket files being left around after process stopped ([#1970 ](https://github-redirect.dependabot.com/puma/puma/issues/1970 ))
> * Absolutely thousands of lines of test improvements and fixes thanks to [@​MSP-Greg](https://github.com/MSP-Greg )
>
> ## 4.1.1 / 2019-09-05
>
> * 3 bugfixes
> * Revert our attempt to not dup STDOUT/STDERR ([#1946 ](https://github-redirect.dependabot.com/puma/puma/issues/1946 ))
> * Fix socket close on error ([#1941 ](https://github-redirect.dependabot.com/puma/puma/issues/1941 ))
> * Fix workers not shutting down correctly ([#1908 ](https://github-redirect.dependabot.com/puma/puma/issues/1908 ))
>
> ## 4.1.0 / 2019-08-08
>
></tr></table> ... (truncated)
</details>
<details>
<summary>Commits</summary>
- [`bb29fc7`](bb29fc7fe8
) 3.12.2
- [`058df12`](058df12b78
) 4.3.1 and 4.2.1 release notes
- [`06053e6`](06053e6090
) Merge pull request from GHSA-7xx3-m584-x994
- [`461c9e9`](461c9e9978
) Docs files
- [`7e2c88d`](7e2c88d413
) v3.12.1
- [`36964ec`](36964ec429
) Merge pull request [#1700 ](https://github-redirect.dependabot.com/puma/puma/issues/1700 ) from schneems/schneems/fix-puma-rack-handler-config
- [`c24c0c8`](c24c0c8834
) Rack handler should use provided default host
- [`e5d566e`](e5d566ed81
) Merge pull request [#1682 ](https://github-redirect.dependabot.com/puma/puma/issues/1682 ) from MSP-Greg/update-travis-ruby
- [`cecc44a`](cecc44aa0a
) Merge pull request [#1701 ](https://github-redirect.dependabot.com/puma/puma/issues/1701 ) from schneems/schneems/m
- [`ce57cfb`](ce57cfb8c3
) Allow running individual tests via the `m` gem.
- Additional commits viewable in [compare view](https://github.com/puma/puma/compare/v3.12.0...v3.12.2 )
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=puma&package-manager=bundler&previous-version=3.12.0&new-version=3.12.2 )](https://help.github.com/articles/configuring-automated-security-fixes )
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/google/gvisor/network/alerts ).
</details>
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/gvisor/pull/1345 from google:dependabot/bundler/benchmarks/workloads/ruby_template/puma-3.12.2 2be8d923b4cf5452e763ce369803f2729876b209
PiperOrigin-RevId: 297664218
2020-02-27 12:51:25 -08:00
gVisor bot
6b2e48514e
Merge pull request #1971 from google:dependabot/bundler/benchmarks/workloads/ruby/rack-2.2.2
...
PiperOrigin-RevId: 297664184
2020-02-27 12:47:08 -08:00
dependabot[bot]
246b34dabd
Bump rack from 2.0.7 to 2.2.2 in /benchmarks/workloads/ruby
...
Bumps [rack](https://github.com/rack/rack ) from 2.0.7 to 2.2.2.
- [Release notes](https://github.com/rack/rack/releases )
- [Changelog](https://github.com/rack/rack/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rack/rack/compare/2.0.7...v2.2.2 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-02-27 20:26:02 +00:00
Nayana Bidari
abf7ebcd38
Internal change.
...
PiperOrigin-RevId: 297638665
2020-02-27 11:00:41 -08:00
Adin Scannell
8e2b14fecf
Use automated release notes, if available.
...
PiperOrigin-RevId: 297628615
2020-02-27 10:22:41 -08:00
Rahat Mahmood
8fb84f78ad
Fix construct of linux.Stat for arm64.
...
PiperOrigin-RevId: 297494373
2020-02-26 19:29:27 -08:00
gVisor bot
6ddeb35ed4
Merge pull request #1912 from lubinszARM:pr_kvm_build
...
PiperOrigin-RevId: 297492004
2020-02-26 19:09:45 -08:00
Jay Zhuang
de0b2ebf86
Add getsockopt tests for SO_SNDTIMEO and SO_RCVTIMEO
...
PiperOrigin-RevId: 297485310
2020-02-26 18:17:23 -08:00
Jamie Liu
a92087f0f8
Add VFS.NewDisconnectedMount().
...
Analogous to Linux's kern_mount().
PiperOrigin-RevId: 297259580
2020-02-25 19:13:30 -08:00
Adin Scannell
fba479b3c7
Fix DATA RACE in fs.MayDelete.
...
MayDelete must lock the directory also, otherwise concurrent renames may
race. Note that this also changes the methods to be aligned with the actual
Remove and RemoveDirectory methods to minimize confusion when reading the
code. (It was hard to see that resolution was correct.)
PiperOrigin-RevId: 297258304
2020-02-25 19:04:15 -08:00
gVisor bot
813b1b0486
Merge pull request #1271 from lubinszARM:pr_ring0_1
...
PiperOrigin-RevId: 297230721
2020-02-25 16:24:43 -08:00
Ian Gudger
87288b26a1
Add netlink sockopt logging to strace.
...
PiperOrigin-RevId: 297220008
2020-02-25 15:35:24 -08:00
Ghanan Gowripalan
5f1f9dd9d2
Use link-local source address for link-local multicast
...
Tests:
- header_test.TestIsV6LinkLocalMulticastAddress
- header_test.TestScopeForIPv6Address
- stack_test.TestIPv6SourceAddressSelectionScopeAndSameAddress
PiperOrigin-RevId: 297215576
2020-02-25 15:16:16 -08:00
Fabricio Voznika
72e3f3a3ee
Add option to skip stuck tasks waiting for address space
...
PiperOrigin-RevId: 297192390
2020-02-25 13:44:18 -08:00
gVisor bot
430992a67a
Merge pull request #1816 from xiaobo55x:trap_flag
...
PiperOrigin-RevId: 297191168
2020-02-25 13:41:05 -08:00
Jamie Liu
471b15b212
Port most syscalls to VFS2.
...
pipe and pipe2 aren't ported, pending a slight rework of pipe FDs for VFS2.
mount and umount2 aren't ported out of temporary laziness. access and faccessat
need additional FSImpl methods to implement properly, but are stubbed to
prevent googletest from CHECK-failing. Other syscalls require additional
plumbing.
Updates #1623
PiperOrigin-RevId: 297188448
2020-02-25 13:37:34 -08:00
Adin Scannell
6def8ea6ac
Fix nested logging.
...
PiperOrigin-RevId: 297175316
2020-02-25 12:25:38 -08:00
Adin Scannell
98b693e61b
Don't acquire contended lock with the OS thread locked.
...
Fixes #1049
PiperOrigin-RevId: 297175164
2020-02-25 12:22:29 -08:00
Adin Scannell
53504e29ca
Fix mount refcount issue.
...
Each mount is holds a reference on a root Dirent, but the mount itself may
live beyond it's own reference. This means that a call to Root() can come
after the associated reference has been dropped.
Instead of introducing a separate layer of references for mount objects,
we simply change the Root() method to use TryIncRef() and allow it to return
nil if the mount is already gone. This requires updating a small number of
callers and minimizes the change (since VFSv2 will replace this code shortly).
PiperOrigin-RevId: 297174230
2020-02-25 12:17:52 -08:00
Bhasker Hariharan
d7b7379251
Deflake TestCurrentConnectedIncrement.
...
TestCurrentConnectedIncrement fails consistently under gotsan due to the sleep
to check metrics is exactly the same as the TIME-WAIT duration. Under gotsan
things can be slow enough that the increment test is done before the protocol
goroutine is run after the TIME-WAIT timer expires and does its cleanup.
Increasing the sleep from 1s to 1.2s makes the test pass consistently.
PiperOrigin-RevId: 297160181
2020-02-25 11:19:34 -08:00
Fabricio Voznika
4d7db46123
Add log during process wait in tests
...
TestMultiContainerKillAll timed out under --race. Without logging,
we cannot tell if the process list is still increasing, but slowly,
or is stuck.
PiperOrigin-RevId: 297158834
2020-02-25 11:14:47 -08:00
Adin Scannell
160d5751ab
Add default behavior for gtest runner.
...
PiperOrigin-RevId: 297009116
2020-02-24 17:29:34 -08:00
gVisor bot
93626a28e4
Merge pull request #1886 from avagin:arm64-travis-ci
...
PiperOrigin-RevId: 296975376
2020-02-24 14:34:13 -08:00
Brad Burlage
ededa90d07
Internal change.
...
PiperOrigin-RevId: 296972565
2020-02-24 14:22:32 -08:00
Ian Gudger
c37b196455
Add support for tearing down protocol dispatchers and TIME_WAIT endpoints.
...
Protocol dispatchers were previously leaked. Bypassing TIME_WAIT is required to
test this change.
Also fix a race when a socket in SYN-RCVD is closed. This is also required to
test this change.
PiperOrigin-RevId: 296922548
2020-02-24 10:32:17 -08:00
Andrei Vagin
75d7f76a6c
arm64: add a travis build ci
...
Build runsc and run "runsc do ls".
Signed-off-by: Andrei Vagin <avagin@gmail.com>
2020-02-21 22:44:19 -08:00
Ting-Yu Wang
b8f56c79be
Implement tap/tun device in vfs.
...
PiperOrigin-RevId: 296526279
2020-02-21 15:42:56 -08:00
Adin Scannell
10aa4d3b34
Factor platform tags.
...
PiperOrigin-RevId: 296519566
2020-02-21 15:06:08 -08:00
Zach Koopmans
3733499952
Fix master installer.
...
Sometimes, when we start a new instance, the file
lock on "apt" is locked. Add a loop to the master
installer.
In addition, the "apt-get install" fails to register
runsc in docker, so run the appropriate scripts to
get that to happen.
Also, add some helpful log messages.
PiperOrigin-RevId: 296497357
2020-02-21 13:18:51 -08:00
Ghanan Gowripalan
a155a23480
Attach LinkEndpoint to NetworkDispatcher immediately
...
Tests: stack_test.TestAttachToLinkEndpointImmediately
PiperOrigin-RevId: 296474068
2020-02-21 11:21:23 -08:00
Copybara-Service
d8e60e7867
Merge pull request #1911 from xiaobo55x:x_sys
...
PiperOrigin-RevId: 296472477
2020-02-21 11:14:05 -08:00
Ghanan Gowripalan
97c07242c3
Use Route.MaxHeaderLength when constructing NDP RS
...
Test: stack_test.TestRouterSolicitation
PiperOrigin-RevId: 296454766
2020-02-21 09:54:55 -08:00
Haibo Xu
5d711c329a
Force downloading new version of org_golang_x_sys.
...
ARM64 PTRACE_SYSEMU support was added to Linux kernal from
v5.3 and the corresponding support in golang is also enabled
in the latest org.golang/x/sys repository.
Updates #1876
Signed-off-by: Haibo Xu <haibo.xu@arm.com>
Change-Id: I10750c4c8b68f6f68d0a4d828e266966434c92fe
2020-02-21 01:51:14 +00:00
gVisor bot
f1b72752e5
Implement automated marshalling for newtypes on primitives.
...
PiperOrigin-RevId: 296322954
2020-02-20 16:23:56 -08:00
gVisor bot
4a73bae269
Initial network namespace support.
...
TCP/IP will work with netstack networking. hostinet doesn't work, and sockets
will have the same behavior as it is now.
Before the userspace is able to create device, the default loopback device can
be used to test.
/proc/net and /sys/net will still be connected to the root network stack; this
is the same behavior now.
Issue #1833
PiperOrigin-RevId: 296309389
2020-02-20 15:20:40 -08:00
gVisor bot
67b615b86f
Support disabling a NIC
...
- Disabled NICs will have their associated NDP state cleared.
- Disabled NICs will not accept incoming packets.
- Writes through a Route with a disabled NIC will return an invalid
endpoint state error.
- stack.Stack.FindRoute will not return a route with a disabled NIC.
- NIC's Running flag will report the NIC's enabled status.
Tests:
- stack_test.TestDisableUnknownNIC
- stack_test.TestDisabledNICsNICInfoAndCheckNIC
- stack_test.TestRoutesWithDisabledNIC
- stack_test.TestRouteWritePacketWithDisabledNIC
- stack_test.TestStopStartSolicitingRouters
- stack_test.TestCleanupNDPState
- stack_test.TestAddRemoveIPv4BroadcastAddressOnNICEnableDisable
- stack_test.TestJoinLeaveAllNodesMulticastOnNICEnableDisable
PiperOrigin-RevId: 296298588
2020-02-20 14:32:49 -08:00
gVisor bot
d90d71474f
Remove bytes read/written from marshal.Marshallable API.
...
Users of the API only care about whether the copy in/out succeeds in
their entirety, which is already signalled by the returned error.
PiperOrigin-RevId: 296297843
2020-02-20 14:29:26 -08:00
gVisor bot
1bb0195079
Add placeholder .travis.yml for #1886
...
PiperOrigin-RevId: 296279095
2020-02-20 13:07:24 -08:00
Adin Scannell
72187fa7a9
Import tags.bzl directly from tools/defs.bzl.
...
This simplifies the script slightly.
PiperOrigin-RevId: 296272077
2020-02-20 12:33:35 -08:00
gVisor bot
9bad87339a
Better strace logging for epoll syscalls.
...
Example:
epoll_ctl(0x3 anon_inode:[eventpoll], EPOLL_CTL_ADD, 0x6 anon_inode:[eventfd], 0x7efe2fd92a80 {events=EPOLLIN|EPOLLOUT data=0x10203040506070a}) = 0x0 (4.411µs)
epoll_wait(0x3 anon_inode:[eventpoll], 0x7efe2fd92b50 {{events=EPOLLOUT data=0x102030405060708}{events=EPOLLOUT data=0x102030405060708}{events=EPOLLOUT data=0x102030405060708}}, 0x3, 0xffffffff) = 0x3 (29.891µs)
PiperOrigin-RevId: 296258146
2020-02-20 11:31:00 -08:00
gVisor bot
9a4e3e63ef
Re-add atomicbitops_arm64.s to BUILD.
...
This was inadverently dropped by cl/295811743.
PiperOrigin-RevId: 296254482
2020-02-20 11:16:08 -08:00