Skip to content

Dockerfile: update runc binary to v1.2.6#49682

Merged
AkihiroSuda merged 1 commit intomoby:masterfrom
thaJeztah:bump_runc_binary_1.2.6
Mar 21, 2025
Merged

Dockerfile: update runc binary to v1.2.6#49682
AkihiroSuda merged 1 commit intomoby:masterfrom
thaJeztah:bump_runc_binary_1.2.6

Conversation

@thaJeztah
Copy link
Member

@thaJeztah thaJeztah commented Mar 21, 2025

This is the sixth patch release in the 1.2.z series of runc. It primarily fixes an issue with runc exec vs time namespace, and a compatibility issue with older kernels.

  • Fix a stall issue that would happen if setting O_CLOEXEC with CloseExecFrom failed.
  • runc now properly handles joining time namespaces (such as with runc exec). Previously we would attempt to set the time offsets when joining, which would fail.
  • Handle EINTR retries correctly for socket-related direct golang.org/x/sys/unix system calls.
  • We no longer use F_SEAL_FUTURE_WRITE when sealing the runc binary, as it turns out this had some unfortunate bugs in older kernel versions and was never necessary in the first place.
  • Remove Fexecve helper from libcontainer/system. Runc 1.2.1 removed runc-dmz, but we forgot to remove this helper added only for that.
  • Use Go 1.23 for official builds, run CI with Go 1.24 and drop Ubuntu 20.04 from CI. We need to drop Ubuntu 20.04 from CI because Github Actions announced it's already deprecated and it will be discontinued soon.

full diff: opencontainers/runc@v1.2.5...v1.2.6

- What I did

- How I did it

- How to verify it

- Human readable description for the release notes

Update `runc` to [v1.2.6](https://github.com/opencontainers/runc/releases/tag/v1.2.6)

- A picture of a cute animal (not mandatory but encouraged)

This is the sixth patch release in the 1.2.z series of runc.
It primarily fixes an issue with runc exec vs time namespace,
and a compatibility issue with older kernels.

* Fix a stall issue that would happen if setting `O_CLOEXEC` with
  `CloseExecFrom` failed.
* `runc` now properly handles joining time namespaces (such as with
  `runc exec`). Previously we would attempt to set the time offsets
  when joining, which would fail.
* Handle `EINTR` retries correctly for socket-related direct
  `golang.org/x/sys/unix` system calls.
* We no longer use `F_SEAL_FUTURE_WRITE` when sealing the runc binary, as it
  turns out this had some unfortunate bugs in older kernel versions and was
  never necessary in the first place.
* Remove `Fexecve` helper from `libcontainer/system`. Runc 1.2.1 removed
  runc-dmz, but we forgot to remove this helper added only for that.
* Use Go 1.23 for official builds, run CI with Go 1.24 and drop Ubuntu 20.04
  from CI. We need to drop Ubuntu 20.04 from CI because Github Actions
  announced it's already deprecated and it will be discontinued soon.

full diff: opencontainers/runc@v1.2.5...v1.2.6

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
@AkihiroSuda AkihiroSuda merged commit e1e6d35 into moby:master Mar 21, 2025
170 checks passed
@thaJeztah thaJeztah deleted the bump_runc_binary_1.2.6 branch March 21, 2025 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants