summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2020-04-07Merge release-20200323.0-83-gfc72eb3 (automated)gVisor bot
2020-04-07Remove TODOs for local gofer extended attributes.Dean Deng
PiperOrigin-RevId: 305344989
2020-04-07Merge release-20200323.0-82-gd5ddb53 (automated)gVisor bot
2020-04-07Remove out-of-date TODOs.Ting-Yu Wang
We already have network namespace for netstack. PiperOrigin-RevId: 305341954
2020-04-07Merge release-20200323.0-81-g47db097 (automated)gVisor bot
2020-04-07Internal change.gVisor bot
PiperOrigin-RevId: 305341059
2020-04-07Merge release-20200323.0-80-g6db55a5 (automated)gVisor bot
2020-04-07Require that IPv6 headers be in the first fragmentGhanan Gowripalan
Test: - header_test.TestIPv6ExtHdrIter - ipv6_test.TestReceiveIPv6Fragments Updates #2197, #2333 PiperOrigin-RevId: 305330178
2020-04-07Merge release-20200323.0-79-g71770e5 (automated)gVisor bot
2020-04-07mkdir test: Address TODOs and re-enable a test.Ting-Yu Wang
PiperOrigin-RevId: 305328184
2020-04-07Merge release-20200323.0-78-g94319a8 (automated)gVisor bot
2020-04-07Make gofer.dentry.destroyLocked idempotentFabricio Voznika
gofer operations accumulate dentries touched in a slice to call checkCachingLocked on them when the operation is over. In case the same dentry is touched multiple times during the operation, checkCachingLocked, and consequently destroyLocked, may be called more than once for the same dentry. Updates #1198 PiperOrigin-RevId: 305276819
2020-04-07Merge release-20200323.0-77-g51e461c (automated)gVisor bot
2020-04-06Add concurrency guarantees to p9 extended attribute methods.Dean Deng
PiperOrigin-RevId: 305171772
2020-04-07Merge release-20200323.0-76-g32fc11e (automated)gVisor bot
2020-04-06Sort posix service functionsEyal Soha
PiperOrigin-RevId: 305157179
2020-04-06Merge release-20200323.0-75-gdd98fdd (automated)gVisor bot
2020-04-06Correctly implement magic symlinks in VFS2 procfs.Jamie Liu
Updates #1195 PiperOrigin-RevId: 305143567
2020-04-06Merge release-20200323.0-74-gf332a86 (automated)gVisor bot
2020-04-06Port timerfd to VFS2.Nicolas Lacasse
PiperOrigin-RevId: 305067208
2020-04-06Merge release-20200323.0-73-g4baa7e7 (automated)gVisor bot
2020-04-06Bump up acceptable sample count for flaky itimer test.Dean Deng
Running the test 1000x almost always produces 1+ test failures where the sample count is slightly more than 60. PiperOrigin-RevId: 305051754
2020-04-06Merge release-20200323.0-72-g00d9776 (automated)gVisor bot
2020-04-06Add socket files to tmpfs VFS2.Dean Deng
Updates #1476. PiperOrigin-RevId: 305024274
2020-04-06Merge release-20200323.0-71-g7482902 (automated)gVisor bot
2020-04-06Implement Stringer for LayerEyal Soha
Tested: Sample output for printing 3 different Layer structs: &testbench.Ether{SrcAddr:02:42:c4:77:5d:14 DstAddr:02:42:c4:77:5d:0a} &testbench.IPv4{SrcAddr:196.119.93.20 DstAddr:224.0.0.1} &testbench.UDP{SrcPort:0xc00033b260 DstPort:0xc00033b280} Sample output for printing a Layers struct (word-wrapped): [&testbench.Ether{SrcAddr:02:42:c4:77:5d:14 DstAddr:02:42:c4:77:5d:0a} &testbench.IPv4{SrcAddr:196.119.93.20 DstAddr:224.0.0.1} &testbench.UDP{SrcPort:0xc00033b260 DstPort:0xc00033b280} &testbench.Payload{Bytes:[104 101 108 108 111 32 119 111 114 108 100]}] PiperOrigin-RevId: 305014376
2020-04-05Merge release-20200323.0-70-g24bee1c (automated)gVisor bot
2020-04-04Record VFS2 sockets in global socket map.Dean Deng
Updates #1476, #1478, #1484, #1485. PiperOrigin-RevId: 304845354
2020-04-04Merge release-20200323.0-69-gfc99a7e (automated)gVisor bot
2020-04-03Refactor software GSO code.Bhasker Hariharan
Software GSO implementation currently has a complicated code path with implicit assumptions that all packets to WritePackets carry same Data and it does this to avoid allocations on the path etc. But this makes it hard to reuse the WritePackets API. This change breaks all such assumptions by introducing a new Vectorised View API ReadToVV which can be used to cleanly split a VV into multiple independent VVs. Further this change also makes packet buffers linkable to form an intrusive list. This allows us to get rid of the array of packet buffers that are passed in the WritePackets API call and replace it with a list of packet buffers. While this code does introduce some more allocations in the benchmarks it doesn't cause any degradation. Updates #231 PiperOrigin-RevId: 304731742
2020-04-03Merge release-20200323.0-68-g5818663 (automated)gVisor bot
2020-04-03Add FileDescriptionImpl for Unix sockets.Dean Deng
This change involves several steps: - Refactor the VFS1 unix socket implementation to share methods between VFS1 and VFS2 where possible. Re-implement the rest. - Override the default PRead, Read, PWrite, Write, Ioctl, Release methods in FileDescriptionDefaultImpl. - Add functions to create and initialize a new Dentry/Inode and FileDescription for a Unix socket file. Updates #1476 PiperOrigin-RevId: 304689796
2020-04-03Merge release-20200323.0-67-ga943096 (automated)gVisor bot
2020-04-03Ensure EOF is handled propertly during splice.Adin Scannell
PiperOrigin-RevId: 304684417
2020-04-03Merge release-20200323.0-66-g4032cf0 (automated)gVisor bot
2020-04-03Deflake //third_party/gvisor/test/perf:getdents_benchmark_runsc_ptraceAndrei Vagin
* Increase a buffer size for getdents64 * Increase a number of shards PiperOrigin-RevId: 304670004
2020-04-03Merge release-20200323.0-65-gea98693 (automated)gVisor bot
2020-04-03Add missing newlineTamir Duberstein
PiperOrigin-RevId: 304659346
2020-04-03Merge release-20200323.0-64-g1921c24 (automated)gVisor bot
2020-04-03Internal change.gVisor bot
PiperOrigin-RevId: 304641990
2020-04-03Merge release-20200323.0-63-gd151693 (automated)gVisor bot
2020-04-02Avoid sending a partial dirent when the Rreaddir response exceeds message limit.Uros Prestor
PiperOrigin-RevId: 304542967
2020-04-03Merge release-20200323.0-62-gdd3bc49 (automated)gVisor bot
2020-04-02Add NAME_MAX checks and update file timesFabricio Voznika
NAME_MAX should be enforced per filesystem implementation because other file systems may not have the same restriction. Gofer filesystem now keeps a reference to the kernel clock to avoid lookup in the Context on file access to update atime. Update access, modification, and status change times in tmpfs. Updates #1197, #1198. PiperOrigin-RevId: 304527148
2020-04-03Merge release-20200323.0-61-g4582a2f (automated)gVisor bot
2020-04-02Drop NDP messages with fragment extension headerGhanan Gowripalan
As per RFC 6980 section 5, nodes MUST silently ignore NDP messages if the packet carrying them include an IPv6 Fragmentation Header. Test: ipv6_test.TestNDPValidation PiperOrigin-RevId: 304519379
2020-04-03Merge release-20200323.0-60-g5b2396d (automated)gVisor bot
2020-04-02Fix typo in TODO comments.Dean Deng
PiperOrigin-RevId: 304508083
2020-04-03Merge release-20200323.0-59-gdbc507d (automated)gVisor bot
2020-04-02Add equivalents to FMODE_PREAD/PWRITE to VFS2.Jamie Liu
This is mostly required for PipeTest_OffsetCalls. The options are DenyPRead/PWrite rather than AllowPRead/PWrite since, in Linux terms, fs/open.c:do_dentry_open sets FMODE_PREAD|FMODE_PWRITE unconditionally (although it allows filesystem implementations of open to unset these flags), so they're set for most FDs; it's usually FDs created outside of open(2) that don't get them, e.g.: - Syscall-created pipes (fs/pipe.c:create_pipe_files => fs/file_table.c:alloc_file_pseudo) - Epoll instances (fs/eventpoll.c:do_epoll_create => fs/anon_inodes.c:anon_inode_getfile => alloc_file_pseudo) - Sockets (net/socket.c:sock_alloc_file => alloc_file_pseudo) This CL adds the flags to epoll instances; a subsequent CL reworks the VFS2 implementation of pipe FDs to be filesystem-independent and adds the flags there, and sockets aren't implemented yet. Updates #1035 PiperOrigin-RevId: 304506434