Commit Graph

7708 Commits

Author SHA1 Message Date
gVisor bot c4a1f8adb6 Merge release-20201208.0-112-gab32fa248 (automated) 2021-01-06 02:23:38 +00:00
Adin Scannell ab32fa2481 Make type sanity checking happen only in race builds.
This adds significant costs to startup, since it is done for
every type in the system. Since the state package already saves
sanity checks for race builds, use this for type registration.

PiperOrigin-RevId: 350259336
2021-01-05 18:15:27 -08:00
gVisor bot bc54e6da95 Merge release-20201208.0-111-gb9b99d3d2 (automated) 2021-01-06 00:55:39 +00:00
Andrei Vagin b9b99d3d26 Don't check that msg_flags contains MSG_ERRQUEUE on gvisor platforms.
PiperOrigin-RevId: 350246333
2021-01-05 16:47:39 -08:00
gVisor bot 5ef7d943c0 Merge release-20201208.0-110-gce7a4440c (automated) 2021-01-05 22:56:51 +00:00
Kevin Krakauer ce7a4440ca Fix panic when parsing SO_TIMESTAMP cmsg
PiperOrigin-RevId: 350223482
2021-01-05 14:45:47 -08:00
gVisor bot ba74ccdec1 Merge release-20201208.0-109-gb06e5bc5b (automated) 2021-01-05 21:33:03 +00:00
Adin Scannell b06e5bc5b0 Add benchmarks targets to BuildKite.
This includes minor fix-ups:

* Handle SIGTERM in runsc debug, to exit gracefully.
* Fix cmd.debug.go opening all profiles as RDONLY.
* Fix the test name in fio_test.go, and encode the block size in the test.

PiperOrigin-RevId: 350205718
2021-01-05 13:21:54 -08:00
gVisor bot cd29587db7 Merge release-20201208.0-108-g93b38bddb (automated) 2021-01-05 21:01:42 +00:00
gVisor bot 93b38bddba Merge pull request #5169 from laijs:fix-typo-whicy
PiperOrigin-RevId: 350200437
2021-01-05 12:54:23 -08:00
gVisor bot 43a40c1f51 Merge release-20201208.0-106-g33d59811f (automated) 2021-01-05 20:48:50 +00:00
Adin Scannell 33d59811fc Change the build badge to point to BuildKite.
PiperOrigin-RevId: 350197814
2021-01-05 12:40:22 -08:00
gVisor bot 32b32d06b4 Merge release-20201208.0-105-g2a5d3c248 (automated) 2021-01-05 18:50:20 +00:00
Adin Scannell 2a5d3c248f Add YAML validation for configuration files.
For validation, the "on" key in existing YAML files is changed to a literal
string. In the YAML spec, on is a keyword which encodes a boolean value, so
without relying on a specific implementation the YAML files are technically
not encoding an object that complies with the specification.

PiperOrigin-RevId: 350172147
2021-01-05 10:43:04 -08:00
gVisor bot 75f4220d0f Merge release-20201208.0-104-g622db84e4 (automated) 2021-01-05 18:02:07 +00:00
gVisor bot efa51d5429 Merge release-20201208.0-103-g2a200811d (automated) 2021-01-05 17:56:24 +00:00
Andrei Vagin 622db84e4b Internal changes.
PiperOrigin-RevId: 350159657
2021-01-05 09:53:42 -08:00
Andrei Vagin 2a200811d4 fs/fuse: check that a task has a specified file descriptor
Reported-by: syzbot+814105309d2ae8651084@syzkaller.appspotmail.com
PiperOrigin-RevId: 350159452
2021-01-05 09:47:30 -08:00
gVisor bot a04eec4405 Merge release-20201208.0-102-g807a080d9 (automated) 2020-12-31 17:58:19 +00:00
Dean Deng 807a080d95 Add missing error checks for FileDescription.Init.
Syzkaller discovered this bug in pipefs by doing something quite strange:
creat(&(0x7f0000002a00)='./file1\x00', 0x0)
mount(&(0x7f0000000440)=ANY=[], &(0x7f00000002c0)='./file1\x00', &(0x7f0000000300)='devtmpfs\x00', 0x20000d, 0x0)
creat(&(0x7f0000000000)='./file1/file0\x00', 0x0)

This can be reproduced with:
touch mymount
mkfifo /dev/mypipe
mount -o ro -t devtmpfs devtmpfs mymount
echo 123 > mymount/mypipe

PiperOrigin-RevId: 349687714
2020-12-31 09:51:01 -08:00
gVisor bot dc419a2a89 Merge release-20201208.0-101-g3b1d37f6a (automated) 2020-12-31 01:02:40 +00:00
Adin Scannell 3b1d37f6ab Remove remote execution support.
PiperOrigin-RevId: 349616845
2020-12-30 16:54:16 -08:00
gVisor bot b8171ab379 Merge release-20201208.0-100-g4691a8125 (automated) 2020-12-30 23:30:38 +00:00
Dean Deng 4691a81253 Add test for open(2) with O_WRONLY|O_RDWR.
PiperOrigin-RevId: 349607959
2020-12-30 15:22:35 -08:00
gVisor bot 69ad143396 Merge release-20201208.0-99-g899b9ba46 (automated) 2020-12-30 23:18:45 +00:00
Adin Scannell 899b9ba46a Add BuildKite annotations for failures and profiles.
This change cleans up some minor Makefile issues, and adds support for
BuildKite annotations on failure and on profiles being generated. These
annotations will make failures very clear and link to the artifacts.

This change is a stepping stone for aggregating coverage data from all
individual test jobs, as this will also happen in .buildkite/annotate.sh.

PiperOrigin-RevId: 349606598
2020-12-30 15:09:12 -08:00
gVisor bot 79f9faebe2 Merge release-20201208.0-98-g0fb5de115 (automated) 2020-12-30 23:00:58 +00:00
Adin Scannell 0fb5de1154 Use a stable ordering for generated types.
Otherwise this pollutes the 'go' branch and doesn't conform to standards
for generate bazel files.

PiperOrigin-RevId: 349605037
2020-12-30 14:53:03 -08:00
gVisor bot fab7036968 Merge release-20201208.0-97-g1b66bad7c (automated) 2020-12-30 19:26:31 +00:00
Fabricio Voznika 1b66bad7c4 Fix condition checking in `runsc debug`
Closes #5052

PiperOrigin-RevId: 349579814
2020-12-30 11:18:36 -08:00
gVisor bot 37811c1b99 Merge release-20201208.0-96-ged5850e8e (automated) 2020-12-30 07:36:32 +00:00
Adin Scannell ed5850e8eb Add continuous VFS1 tests.
PiperOrigin-RevId: 349517093
2020-12-29 23:28:39 -08:00
gVisor bot 9c3ca53ebf Merge release-20201208.0-95-gfc153750e (automated) 2020-12-30 04:33:30 +00:00
Ting-Yu Wang fc153750ed Deflake TestBindOverlay in //test/e2e:integration_test
Test failure happens when `echo` writes late:
* Server nc shuts down write when it sees EOF from stdin.
* Client nc closes the connection when it detects EOF from socket and no data
  in internal write buffer.

Using `-q` flag to make server not shutting down write in the beginning, while
letting connection to be closed by client. As `-q` flag's default value varies
in different netcat versions, we always specify it to prevent future breakage.

PiperOrigin-RevId: 349504016
2020-12-29 20:24:40 -08:00
gVisor bot 8c26e4ad1a Merge release-20201208.0-94-gffa9a715a (automated) 2020-12-30 02:36:26 +00:00
Adin Scannell ffa9a715aa Simplify profiling and benchmarks.
- Tweak the benchmarks to work with b.N where appropriate. In many cases,
  b.N was simply being ignored. This creates an implicit dependency in the
  user passing a reasonable benchtime (less than or equal to the actual
  runtime of the test, or using the X syntax) otherwise the test runs
  forever.
- In cases where the above is impossible, explicitly set benchtime from
  the test wrapper, to prevent the above behavior (tensorflow).
- Drop the *Reverse variants, which are simply hey benchmarks. We should
  just add a hey benchmark. The platforms benchmarks already include a
  native platform, and thus these benchmarks are incredibly confusing.
  (In other words, BenchmarkNginxReverse has nothing to do with an nginx
  benchmark for runsc.)
- Remove the redunant Harness object, which contains no state, in order
  to slightly simplify the code.
- Make Block and Heap profiling actually work, but setting appropriate
  runtime parameters (and plumbing them through the config).
- Split the profiling into two phases: start and stop, since some will
  need to be started early, and others will need to happen at the end.

PiperOrigin-RevId: 349495377
2020-12-29 18:29:12 -08:00
gVisor bot d4fe5f187e Merge release-20201208.0-93-g3c58405a5 (automated) 2020-12-30 01:53:20 +00:00
gVisor bot 7698cd15cd Merge release-20201208.0-92-gd302c0570 (automated) 2020-12-30 01:46:31 +00:00
Adin Scannell 3c58405a54 Exclude changing generated file from go_branch.
PiperOrigin-RevId: 349491589
2020-12-29 17:46:00 -08:00
Jing Chen d302c05700 Deflake semaphore_test_native
PiperOrigin-RevId: 349490873
2020-12-29 17:38:23 -08:00
gVisor bot 34df6705c8 Merge release-20201208.0-91-g85c1c3ed4 (automated) 2020-12-30 00:30:50 +00:00
Adin Scannell 85c1c3ed4b Make profiling commands synchronous.
This allows for a model of profiling when you can start collection, and
it will terminate when the sandbox terminates. Without this synchronous
call, it is effectively impossible to collect length blocking and mutex
profiles.

PiperOrigin-RevId: 349483418
2020-12-29 16:23:01 -08:00
gVisor bot 691e097efc Merge release-20201208.0-90-g91c05c609 (automated) 2020-12-29 21:05:03 +00:00
Tamir Duberstein 91c05c609e Export socket_ipv6_udp_unbound_loopback.cc
PiperOrigin-RevId: 349458984
2020-12-29 12:56:59 -08:00
gVisor bot 5c21c7c3bd Merge release-20201208.0-89-g3ff7324df (automated) 2020-12-28 22:05:49 +00:00
Tamir Duberstein 3ff7324dfa Avoid duplicate `run` key
This GitHub action has been failing since 4e963c9.

PiperOrigin-RevId: 349327675
2020-12-28 13:57:54 -08:00
gVisor bot 5dc60a7632 Merge pull request #5166 from kevinGC:bk-warnings
PiperOrigin-RevId: 349314945
2020-12-28 12:12:35 -08:00
Lai Jiangshan d56ea8dfe4 typo: change whicy to which
Signed-off-by: Lai Jiangshan <jiangshan.ljs@antfin.com>
2020-12-27 11:28:16 +08:00
Kevin Krakauer 5259b90dac Resolve compiler warnings
The buildkite syscall tests start with a lot of C++ warnings. This
cleans that up a little.
2020-12-23 16:49:01 -08:00
Andrei Vagin d079159876 vfs1: don't allow to open socket files
open() has to return ENXIO in this case.

O_PATH isn't supported by vfs1.

PiperOrigin-RevId: 348820478
2020-12-23 11:11:07 -08:00