summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2020-04-01Merge release-20200323.0-51-g0d1e299 (automated)gVisor bot
2020-04-01Pass configurable FilesystemType to tmpfs.Nicolas Lacasse
PiperOrigin-RevId: 304234086
2020-04-01Merge release-20200323.0-50-g38f4501 (automated)gVisor bot
2020-04-01Add context.Context argument to XxxWithErrno functionsEyal Soha
This allows control over the gRPC timeouts as needed. PiperOrigin-RevId: 304225713
2020-04-01Merge release-20200323.0-49-g4e6a1a5 (automated)gVisor bot
2020-04-01Automated rollback of changelist 303799678Adin Scannell
PiperOrigin-RevId: 304221302
2020-04-01Merge release-20200323.0-48-gdb79175 (automated)gVisor bot
2020-04-01Fix 386 build tagsMichael Pratt
The build tag for 32-bit x86 is 386, not i386. Updates #2298 PiperOrigin-RevId: 304206373
2020-04-01Merge release-20200323.0-47-gd01a8ca (automated)gVisor bot
2020-04-01Add FileDescription interface for socket files.Dean Deng
Refactor the existing socket interface to share methods between VFS1 and VFS2. The method signatures do not contain anything filesystem-related, so they don't need to be re-defined for VFS2. Updates #1476, #1478, #1484, #1485. PiperOrigin-RevId: 304184545
2020-04-01Merge release-20200323.0-46-g507f997 (automated)gVisor bot
2020-04-01go-marshal: Improve collision detection of import statments.Rahat Mahmood
Previously, the import statement collision detection mechanism aborted go-marshal whenever it detected two imports in any package that has the same local name. Consider this trivial package, defined by the the following two source files: file1.go: package example import ( path/a/to/foo ) ... file2.go: package example import ( another/package/with/final/component/foo ) ... Go-marshal previously couldn't handle generating code for the the above package, even if none of the types marked for marshalling used either of the imported foo packages. This turns out to be too restrictive as we run into this a lot in practice. Examples include "encoding/binary" vs "gvisor/pkg/binary/binary", and "sync" vs "gvisor/pkg/sync/sync". This change allows go-marshal to proceed with marshalling, and only abort if the code generated by go-marshal references any such ambiguous import names. PiperOrigin-RevId: 304131190
2020-04-01Merge release-20200323.0-45-g840980a (automated)gVisor bot
2020-03-31Implement automated marshalling for slices of Marshallable types.Rahat Mahmood
PiperOrigin-RevId: 304119255
2020-04-01Merge release-20200323.0-44-gd25036a (automated)gVisor bot
2020-03-31Test receiving multicast packets over UDPEyal Soha
PiperOrigin-RevId: 304098611
2020-04-01Merge release-20200323.0-43-g639d94f (automated)gVisor bot
2020-03-31Add socket filesystem and global disconnected socket mount for VFS2.Dean Deng
A socket mount where anonymous sockets will reside is added to the VirtualFilesystem. Socketfs is built on top of kernfs. Updates #1476, #1478, #1484, #1485. PiperOrigin-RevId: 304095251
2020-03-31Merge release-20200323.0-42-g57e67e3 (automated)gVisor bot
2020-03-31Debug script issues on Kokoro.Zach Koopmans
PiperOrigin-RevId: 304068950
2020-03-31Merge release-20200323.0-41-gb6639f7 (automated)gVisor bot
2020-03-31Include original copyUp error in panic if cleanupUpper fails.Nicolas Lacasse
When copyUp fails, we attempt to clean up the upper filesystem by removing any files that have already been copied-up. If the cleanup fails, we panic because the "overlay filesystem is in an inconsistent state". This CL adds the original copy-up error to the panic information, to hopefully make it easier to track down how the overlay filesystem got into the inconsistent state. PiperOrigin-RevId: 304053370
2020-03-31Fix /proc/self/mounts and /proc/self/mountinfo in VFS2.Nicolas Lacasse
Some extra fields were added to the Mount type to expose necessary data to the proc filesystem. PiperOrigin-RevId: 304053361
2020-03-31Merge release-20200323.0-39-g9de982e (automated)gVisor bot
2020-03-31Allow passing root file type to tmpfs.Nicolas Lacasse
PiperOrigin-RevId: 304053357
2020-03-30Merge release-20200219.0-261-g32a1335 (automated)gVisor bot
2020-03-30Add AMD Rome CPUID flag.Michael Pratt
This flag is set on Rome CPUs, but it is not documented. PiperOrigin-RevId: 303825532
2020-03-30Merge release-20200219.0-260-ge36eccc (automated)gVisor bot
2020-03-30BigQuery schema for benchmark-tools dashboard.Zach Koopmans
PiperOrigin-RevId: 303805784
2020-03-30Merge release-20200219.0-259-g3fac85d (automated)gVisor bot
2020-03-30kvm: handle exit reasons even under EINTR.Adin Scannell
In the case of other signals (preemption), inject a normal bounce and defer the signal until the vCPU has been returned from guest mode. PiperOrigin-RevId: 303799678
2020-03-30Merge release-20200219.0-258-g4aee370 (automated)gVisor bot
2020-03-30Internal change.Zach Koopmans
PiperOrigin-RevId: 303773475
2020-03-30Merge release-20200219.0-257-g1876f10 (automated)gVisor bot
2020-03-30Merge pull request #2265 from amscanne:arm64_nogogVisor bot
PiperOrigin-RevId: 303753027
2020-03-28Merge release-20200219.0-255-gf6e4daa (automated)gVisor bot
2020-03-27Merge release-20200219.0-253-g2a4aff7 (automated)gVisor bot
2020-03-27Add vfs.PathnameReachable().Jamie Liu
/proc/[pid]/mount* omit mounts whose mount point is outside the chroot, which is checked (indirectly) via __d_path(). PiperOrigin-RevId: 303434226
2020-03-27Add FilesystemType.Name method, and FilesystemType field to Filesystem struct.Nicolas Lacasse
Both have analogues in Linux: * struct file_system_type has a char *name field. * struct super_block keeps a pointer to the file_system_type. These fields are necessary to support the `filesystem type` field in /proc/[pid]/mountinfo. PiperOrigin-RevId: 303434063
2020-03-27Support Hop By Hop and Destination Options ext hdrGhanan Gowripalan
Enables handling the Hop by Hop and Destination Options extension headers, but options are not yet supported. All options will be treated as unknown and their respective action will be followed. Note, the stack does not yet support sending ICMPv6 error messages in response to options that cannot be handled/parsed. That will come in a later change (Issue #2211). Tests: - header_test.TestIPv6UnknownExtHdrOption - header_test.TestIPv6OptionsExtHdrIterErr - header_test.TestIPv6OptionsExtHdrIter - ipv6_test.TestReceiveIPv6ExtHdrs PiperOrigin-RevId: 303433085
2020-03-27Merge release-20200219.0-252-g76a7ace (automated)gVisor bot
2020-03-26Add BoundEndpointAt filesystem operation.Dean Deng
BoundEndpointAt() is needed to support Unix sockets bound at a file path, corresponding to BoundEndpoint() in VFS1. Updates #1476. PiperOrigin-RevId: 303258251
2020-03-26Merge release-20200219.0-251-g137f361 (automated)gVisor bot
2020-03-26Use host-defined file owner and mode, when possible, for imported fds.Dean Deng
Using the host-defined file owner matches VFS1. It is more correct to use the host-defined mode, since the cached value may become out of date. However, kernfs.Inode.Mode() does not return an error--other filesystems on kernfs are in-memory so retrieving mode should not fail. Therefore, if the host syscall fails, we rely on a cached value instead. Updates #1672. PiperOrigin-RevId: 303220864
2020-03-26Merge release-20200219.0-250-gedc3c04 (automated)gVisor bot
2020-03-26Use panic instead of log.FatalfGhanan Gowripalan
PiperOrigin-RevId: 303212189
2020-03-26Merge release-20200219.0-249-g0e62a54 (automated)gVisor bot
2020-03-26Merge pull request #2130 from nybidari:iptablesgVisor bot
PiperOrigin-RevId: 303208407
2020-03-26Merge release-20200219.0-247-gfbe8046 (automated)gVisor bot
2020-03-26Handle IPv6 Fragment & Routing extension headersGhanan Gowripalan
Enables the reassembly of fragmented IPv6 packets and handling of the Routing extension header with a Segments Left value of 0. Atomic fragments are handled as described in RFC 6946 to not interfere with "normal" fragment traffic. No specific routing header type is supported. Note, the stack does not yet support sending ICMPv6 error messages in response to IPv6 packets that cannot be handled/parsed. That will come in a later change (Issue #2211). Test: - header_test.TestIPv6RoutingExtHdr - header_test.TestIPv6FragmentExtHdr - header_test.TestIPv6ExtHdrIterErr - header_test.TestIPv6ExtHdrIter - ipv6_test.TestReceiveIPv6ExtHdrs - ipv6_test.TestReceiveIPv6Fragments RELNOTES: n/a PiperOrigin-RevId: 303189584