What google/gvisor shipped
Written by FoxPlug from the repository's own releases; not affiliated with Gvisor. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/google/gvisor; Gvisor did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of October 5, 2026
What shipped
- Accepted TCP endpoints now inherit the congestion control algorithm explicitly selected on the listening socket, including SYN-cookie handshakes. Pull request #15574
- Reno congestion control now consumes ACK credit before growing the congestion window, so the window grows once per window rather than on every individual ACK. Pull request #15576
- CUBIC now preserves ACK growth credit across individual ACKs, avoiding windows that never grow during fast recovery and single ACKs that inflate the window by many segments. Pull request #15579
- EROFS reads that cross the boundary between full blocks and tail-packed inline data are no longer cut short, so a single read returns the whole requested range. Pull request #15526
- The systrap platform retries the seccomp notify RECV operation on ENOENT, so freezing and thawing a sandbox with the cgroup v2 freezer no longer kills the application when requests are in flight. Pull request #15496
- Procfs now provides /proc/sys/fs/file-nr and file-max reporting the system-wide count of allocated files, instead of returning ENOENT. Pull request #15564
- /proc/[pid]/stat now reports PF_EXITING in its flags field, letting readers distinguish an exiting task or zombie from a live one. Pull request #15516
- Oversized exec arguments and environment now return E2BIG as Linux does, rather than ENAMETOOLONG or ENOMEM. Pull request #14853
- The network=none setup forwards the packet logging setting to its loopback interface, so --log-packets produces packet records on that route. Pull request #15563
- GVisor 20261005.0 is released, with binaries available from the apt repository and the release bucket. Release
Why it matters
This week tightened core networking behavior: accepted connections keep the congestion control chosen on the listener, and both Reno and CUBIC now account for ACK credit correctly, which affects throughput and recovery timing for TCP workloads. The sandbox also became more resilient to cgroup freezer operations on systrap, and procfs gained the system-wide file count that tools read. The 20261005.0 release packages these and earlier changes for users installing from apt or the release bucket.
Changelog entry
- Netstack: inherit explicit TCP congestion control on accept, including SYN-cookie handshakes. Pull request #15574
- Netstack: consume Reno ACK credit before growing cwnd. Pull request #15576
- Netstack: preserve CUBIC ACK growth credit across individual ACKs. Pull request #15579
- Erofs: don't cut reads short at the inline tail. Pull request #15526
- Systrap: retry seccomp notify RECV on ENOENT after cgroup freezer operations. Pull request #15496
- Proc: report allocated files in /proc/sys/fs/file-nr and file-max. Pull request #15564
- Proc: report PF_EXITING in /proc/[pid]/stat flags. Pull request #15516
- Syscall: return E2BIG for oversized exec args and env. Pull request #14853
- Netstack: honor packet logging with network=none. Pull request #15563
- Encode map entries with reflect.MapRange, preserving NaN keys. Pull request #15542
- Systrap: shift the spinning queue by the stub gap. Pull request #15573
- Update Abseil and its C++ dependencies. Pull request #15414
Accepted TCP endpoints now inherit the listener's congestion control. Reno and CUBIC keep ACK credit straight. EROFS reads no longer stop at the inline tail. systrap survives cgroup freezer cycles. /proc/sys/fs/file-nr works. gVisor 20261005.0 is out.
This week's gVisor changes focus on networking correctness and sandbox resilience. Accepted TCP endpoints now inherit the congestion control algorithm selected on the listener, including SYN-cookie handshakes. Reno consumes ACK credit before growing its congestion window, and CUBIC preserves growth credit so windows grow at the right rate after fast recovery. EROFS reads that span full blocks and tail-packed inline data now return the complete requested range, and oversized exec arguments return E2BIG as on Linux. On systrap, the seccomp notify path retries on ENOENT so freezing and thawing with the cgroup v2 freezer no longer kills the application. procfs also gained /proc/sys/fs/file-nr and file-max, and /proc/[pid]/stat reports PF_EXITING. Release 20261005.0 is available.
Week of September 28, 2026
What shipped
- Release gVisor 20260928.0 with netfilter improvements, DMI data handling, and lock contract enforcement. Release
- Added iptables MASQUERADE target for IPv4 and IPv6 with strict hook validation. Pull request #14606
- Fixed handling of SECCOMP_RET_KILL_PROCESS to properly terminate the entire process instead of just the calling thread. Pull request #14231
- Fixed cgroup cleanup after failed container creation to prevent leaving orphaned gofer processes. Pull request #15149
- Corrected message-queue unlink permissions to match Linux by using world-writable sticky directories. Pull request #15159
- Fixed buffer cloning and growing to prevent modifications to cloned buffers from affecting the original. Pull request #15184
- Implemented cgroup v2 systemd subcontainer compatibility directories to report cAdvisor metrics matching runc-managed pods. Pull request #13070
- Enhanced checklocks tool to enforce lock and atomic contracts across package boundaries and nested captures. Pull request #14237
Why it matters
This week addresses correctness in signal handling, container cleanup, and filesystem permissions to better match Linux behavior. Infrastructure improvements for lock checking and cgroup compatibility make gVisor more reliable for production workloads that depend on precise seccomp and resource management semantics.
Changelog entry
- Release 20260928.0 Release
- Netfilter: add iptables MASQUERADE target with strict hook validation and tests Pull request #14606
- Handle SECCOMP_RET_KILL_PROCESS in the sentry Pull request #14231
- Clean up cgroups after failed container creation Pull request #15149
- Match Linux message-queue unlink permissions Pull request #15159
- Preserve cloned buffers when growing with zeros Pull request #15184
- Runsc/cgroup: discover and populate spec files for subcontainer compat dirs on systemd v2 Pull request #13070
- Checklocks: enforce lock and atomic contracts Pull request #14237
- Arm64: disable PAC on systrap Pull request #15230
- Expect short IPV6_CHECKSUM options to fail Pull request #15233
- Checkpoint openat2 races after workers finish Pull request #15125
- Set explicit priorities in ioprio tests Pull request #15071
GVisor 20260928.0 released: MASQUERADE target for netfilter, SECCOMP_RET_KILL_PROCESS fix, improved cgroup cleanup, and enhanced lock contract enforcement.
GVisor 20260928.0 is now available. This release includes the iptables MASQUERADE target with strict validation, a critical fix for SECCOMP_RET_KILL_PROCESS handling, improved container creation cleanup, and enhanced lock contract checking across package boundaries. These changes improve compatibility with Linux behavior and system reliability.
Week of September 21, 2026
What shipped
- Release 20260921.0 shipped with lint enforcement in the Buildkite pipeline. Release
- Added iptables comment match extension to netfilter for packet filtering. Pull request #14602
- Strace events now include thread ID to correctly pair syscall traces from multiple threads. Pull request #15015
- Signal masks now appear in /proc/[pid]/status showing which signals processes block, ignore or handle. Pull request #14499
- Implemented /proc/sys/user/max_user_namespaces with enforcement for user namespace limits. Pull request #13539
- Fixed file capabilities handling under
no_new_privsto match Linux behavior. Pull request #14912 - Made interrupt.Forwarder lock-free, reducing syscall latency by 2-4% on various platforms. Pull request #14952
- Iptables now rejects REDIRECT, DNAT and SNAT targets on unsupported hooks and tables. Pull request #14509
- Implemented TCSETSF ioctl for master/replica tty devices. Pull request #14754
- Added bounds validation for checksum offset in nftables payload set operations. Pull request #13161
Why it matters
This week covers correctness fixes for system call tracing and capability enforcement, new netfilter and nftables features for packet processing, signal mask visibility in process status, and performance improvements on the syscall path. These changes improve container isolation semantics, debugging capabilities, and runtime performance.
Changelog entry
- DMI product data probes now treat missing host data as optional for hosts like Firecracker microVMs. Pull request #15049
- Checklocks inference now honors field-level ignore annotations when suggesting guard annotations. Pull request #15029
- Nogo reuses object-path encoders per package and updates x/tools to v0.45.0 for better performance. Pull request #14829
- Netfilter: added iptables comment match extension (revision 0) for packet filtering and iptables-save round-tripping. Pull request #14602
- Strace events now include thread ID field to prevent mis-pairing of concurrent syscalls. Pull request #15015
- Auth: fixed file capabilities to remain active under
no_new_privsas Linux does. Pull request #14912 - Plugin socket readiness caching now uses atomic compare-and-swap to prevent concurrent update race conditions. Pull request #14370
- Nftables: added bounds validation for checksum offset in payload set operations. Pull request #13161
- Checklocks fixtures now check all diagnostics instead of filtering suppressed text. Pull request #14827
- Checklocks: annotated synchronization in service state, logging, metrics and verification code. Pull request #14350
- Made interrupt.Forwarder lock-free, reducing kvm.getpid latency by 4.5% and systrap.getpidopt by 2.1%. Pull request #14952
- Cgroupfs now properly removes registry entries when filesystem is released. Pull request #13215
- /proc/[pid]/status now shows signal masks: SigPnd, ShdPnd, SigBlk, SigIgn and SigCgt. Pull request #14499
- Go package driver now targets Linux to fix file selection mismatches on non-Linux hosts. Pull request #14987
- Implemented TCSETSF ioctl for master/replica tty devices. Pull request #14754
- Checklocks now reads annotations from all declaration contexts including standalone docs and later names. Pull request #14881
- Auto-assign workflow now pins action commits for checkout v7.0.1 and github-script v9.0.0. Pull request #14740
- /proc/sys/user/max_user_namespaces now enforced to allow bubblewrap's --disable-userns to work. Pull request #13539
- TestSystemdDocker now verifies docker pause actually stops container execution. Pull request #14979
- //:release now ships race-instrumented runsc and Sentry when built with --config=race. Pull request #14962
GVisor 20260921.0 ships with strace thread tracking, iptables comment matches, /proc signal masks, user namespace limits, and 2-4% syscall speedup via lock-free forwarder.
GVisor 20260921.0 improves system call debugging with per-thread strace events, adds netfilter comment match extension and nftables checksum validation, exposes signal masks in /proc/[pid]/status, enforces /proc/sys/user/max_user_namespaces limits, fixes file capabilities under no_new_privs to match Linux, and makes the interrupt forwarder lock-free for 2-4% syscall latency reduction.
Week of September 14, 2026
What shipped
- GVisor 20260914.0 released with improvements to CPU reporting, seccomp performance, and systemd compatibility. Release
- Fixed FUSE file handling to properly support opening files larger than 2GiB by checking O_LARGEFILE flags before masking. Pull request #13957
- Added AT_PLATFORM to the initial auxiliary vector to match Linux behavior and improve application compatibility. Pull request #14816
- Added STATX_ATTR_MOUNT_ROOT reporting from statx to support systemd 60+ requirements. Pull request #14764
- Optimized seccomp initialization by lazily constructing precompiled programs instead of eagerly materializing all bytecode at startup. Pull request #14674
- Increased setsockopt maximum option length from 32KB to 1MB to support larger socket option payloads. Pull request #14600
- Fixed GPU device file restoration to create nvproxy device files on restore regardless of remap metadata availability. Pull request #14525
- Added writable net.ipv4.conf.all.route_localnet sysctl support for enabling martian loopback traffic routing. Pull request #14625
- Fixed tmpfs checkpoint handling to preserve binary and empty xattrs in filesystem checkpoints. Pull request #14793
- Added support for NVIDIA driver version 615.71.09 in nvproxy. Pull request #14751
Why it matters
Release 20260914.0 brings significant compatibility improvements, particularly for systemd integration and GPU support. Performance optimizations in seccomp and fixes to file handling make gVisor more practical for real-world workloads requiring large files and complex socket operations.
Changelog entry
- Release: gVisor 20260914.0 Release
- Fuse: check O_LARGEFILE before masking it out of the open flags Pull request #13957
- Add AT_PLATFORM to the initial auxv Pull request #14816
- Report STATX_ATTR_MOUNT_ROOT from statx Pull request #14764
- Seccomp: Lazily construct precompiled seccomp programs Pull request #14674
- Syscalls/linux: raise setsockopt maxOptLen to 1MB Pull request #14600
- Create nvproxy device files on restore regardless of remap metadata Pull request #14525
- Proc, tcpip: add writable net.ipv4.conf.all.route_localnet Pull request #14625
- Tmpfs: preserve binary and empty xattrs in filesystem checkpoints Pull request #14793
- Nvproxy: Add support for NVIDIA driver version 615.71.09 Pull request #14751
- Fix clock overflow recovery and watchdog timing Pull request #14357
- Synchronize shared key permissions Pull request #14365
- Runsc symbolize: Delegate symbolization to sentry binary Pull request #14718
- Cap host CPU deep idle states for GPU sandboxes on impacted CPUs Pull request #14526
- Reproduce host errno for unreadable RDMA netdev sysfs attributes Pull request #14567
- Fix races in shim version queries and RPC shutdown Pull request #14358
GVisor 20260914.0 is out. Better FUSE file support, systemd compatibility, GPU restoration, and seccomp performance improvements.
GVisor 20260914.0 released with major improvements: FUSE now handles files >2GB, seccomp initialization 8ms faster per sandbox, systemd 60+ compatibility via STATX_ATTR_MOUNT_ROOT, GPU device restoration fixes, and socket options up to 1MB. Check the changelog for full details.