8130 Commits

Author SHA1 Message Date
Kir Kolyshkin
0c87c02ff0 Merge pull request #5343 from kolyshkin/cpu-aff-dyn
Remove 1024 CPUs limit
2026-07-29 11:18:53 -07:00
Kir Kolyshkin
c55649b75e libct: reuse configs.MaxCPU
Suggested-by: Li Fubang <lifubang@acmcoder.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-07-27 17:12:24 -07:00
Kir Kolyshkin
daf934fefc libct: use CPUSetDynamic for affinity and mempolicy masks
ToCPUSet was limited to unix.CPUSet (a fixed-size mask capped at 1024
CPUs). Switch CPUAffinity, LinuxMemoryPolicy.Nodes, ToCPUSet, and
SetMempolicy to unix.CPUSetDynamic, which can represent arbitrary CPU
and NUMA node IDs.

ToCPUSet now parses the input in a first pass to find the maximum value,
then allocates a mask large enough to hold it (out-of-range Set calls on
a dynamic mask are silently ignored). An arbitrary sanity cap is kept to
avoid huge allocations on bogus input.

This is backward compatible with reading older state.json: both the old
*unix.CPUSet (a fixed array) and the new CPUSetDynamic (a slice)
marshal to and from the same JSON array-of-numbers representation.

Update TestToCPUSet accordingly, adding coverage for values beyond the
old non-dynamic limit.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-07-27 17:12:24 -07:00
Kir Kolyshkin
31e64125b5 libct: switch to unix.SchedSetaffinityDynamic
This was introduced in https://go-review.googlesource.com/c/sys/+/735380
to overcome the 1024 CPUs limit.

Let's change our wrapper to use unix.SchedSetaffinityDynamic.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-07-27 17:12:24 -07:00
Kir Kolyshkin
e2b8e8b836 Merge pull request #5380 from lifubang/bump-cgroups-0.0.8
build(deps): bump github.com/opencontainers/cgroups from 0.0.6 to 0.0.8
2026-07-27 13:28:12 -07:00
lifubang
3e92f3f539 build(deps): bump github.com/opencontainers/cgroups from 0.0.6 to 0.0.8
Adapt to the updated `cgroups.Manager` interface:
// Stats returns statistics for specified controllers.
Stats(opts *StatsOptions) (*Stats, error)

Signed-off-by: lifubang <lifubang@acmcoder.com>
2026-07-27 10:05:57 +08:00
Kir Kolyshkin
8d2f7df5cd Merge pull request #5372 from opencontainers/dependabot/github_actions/actions/setup-go-7
build(deps): bump actions/setup-go from 6 to 7
2026-07-20 14:44:02 -07:00
Akihiro Suda
9baf4990dd Merge pull request #5376 from kolyshkin/seccomp-261
build: bump libseccomp to v2.6.1
2026-07-19 08:19:10 +09:00
Kir Kolyshkin
ea0c849871 build: bump libseccomp to v2.6.1
This was released July 1 2026, see
https://github.com/seccomp/libseccomp/releases/tag/v2.6.1

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-07-17 19:57:03 -07:00
dependabot[bot]
34269d47d8 build(deps): bump actions/setup-go from 6 to 7
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6 to 7.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-16 04:52:22 +00:00
lfbzhm
fc89fbd9eb Merge pull request #5366 from opencontainers/dependabot/go_modules/golang.org/x/net-0.57.0
build(deps): bump golang.org/x/net from 0.56.0 to 0.57.0
2026-07-10 09:29:59 +08:00
lfbzhm
ebf6d441e6 Merge pull request #5365 from opencontainers/dependabot/go_modules/github.com/checkpoint-restore/go-criu/v8-8.4.0
build(deps): bump github.com/checkpoint-restore/go-criu/v8 from 8.3.0 to 8.4.0
2026-07-10 09:28:49 +08:00
dependabot[bot]
9f78979fe8 build(deps): bump github.com/checkpoint-restore/go-criu/v8
Bumps [github.com/checkpoint-restore/go-criu/v8](https://github.com/checkpoint-restore/go-criu) from 8.3.0 to 8.4.0.
- [Release notes](https://github.com/checkpoint-restore/go-criu/releases)
- [Commits](https://github.com/checkpoint-restore/go-criu/compare/v8.3.0...v8.4.0)

---
updated-dependencies:
- dependency-name: github.com/checkpoint-restore/go-criu/v8
  dependency-version: 8.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-09 17:59:57 -07:00
Aleksa Sarai
08dc90f777 Merge pull request #5363 from thaJeztah/rm_go_reportcard
README: remove Go Report Card badge
2026-07-09 22:49:25 +10:00
dependabot[bot]
3a104c0b93 build(deps): bump golang.org/x/net from 0.56.0 to 0.57.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.56.0 to 0.57.0.
- [Commits](https://github.com/golang/net/compare/v0.56.0...v0.57.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.57.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-09 04:52:39 +00:00
Sebastiaan van Stijn
5eef7501a8 README: remove Go Report Card badge
The project was sunset;

> After more than a decade of serving the ecosystem, the time
> has come to sunset Go Report Card. Following the loss of our
> primary infrastructure sponsor, maintaining the web app is
> no longer sustainable.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-07-09 01:09:39 +02:00
Sebastiaan van Stijn
6689c8657e Merge pull request #5358 from lifubang/fix-nr-inodes-focal
libct: retry with nr_inodes=2 to fix Focal mount errors
2026-07-02 00:10:42 +02:00
lifubang
a5690a084d libct: retry with nr_inodes=2 to fix Focal mount errors
Given that the majority of reviewers favor the 'nr_inodes=2' retry logic,
we propose reverting #5353 and implementing the new approach.

1. Revert "libct: add a fallback for nr_inodes=2"
This reverts commit 79ac57770f.

2. Revert "libct: Enforce nr_inodes=2 to fix Focal mount errors"
This reverts commit feea25820e.

3. The new approach:
On most kernels `nr_inodes=1` works fine. However, Ubuntu 20.04 (Focal) with
the official 5.4 kernel carries a private patch in "mm/shmem.c" that rejects
`nr_inodes<2`, so retry with `nr_inodes=2` here.
For reference, search for "case Opt_nr_inodes" in:
https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/focal/plain/mm/shmem.c?h=Ubuntu-5.4.0-216.236

Signed-off-by: lifubang <lifubang@acmcoder.com>
2026-07-01 15:39:40 +00:00
Rodrigo Campos Catelin
89f46d6470 Merge pull request #5353 from lifubang/fix-maskdir-nrinode-2
libct: Enforce nr_inodes=2 to fix Focal mount errors
2026-06-30 12:30:01 +02:00
lifubang
79ac57770f libct: add a fallback for nr_inodes=2
We don't know whether some kernels will fail with "nr_inodes=2",
so let's fall back to mount a tmpfs without "nr_inodes".

Signed-off-by: lifubang <lifubang@acmcoder.com>
2026-06-30 10:04:46 +00:00
lifubang
feea25820e libct: Enforce nr_inodes=2 to fix Focal mount errors
On most kernels `nr_inodes=1` works fine. However, Ubuntu 20.04 (Focal) with
the official 5.4 kernel carries a private patch in mm/shmem.c that rejects
"nr_inodes<2", so let's keep `nr_inodes=2` here!

Signed-off-by: lifubang <lifubang@acmcoder.com>
2026-06-30 10:04:46 +00:00
lfbzhm
a081198d54 Merge pull request #5352 from opencontainers/dependabot/go_modules/github.com/urfave/cli/v3-3.10.1
build(deps): bump github.com/urfave/cli/v3 from 3.10.0 to 3.10.1
2026-06-30 00:50:05 +08:00
Rodrigo Campos Catelin
30d7618c64 Merge pull request #5346 from opencontainers/dependabot/go_modules/github.com/moby/sys/user-0.4.1
build(deps): bump github.com/moby/sys/user from 0.4.0 to 0.4.1
2026-06-29 16:15:37 +02:00
Rodrigo Campos Catelin
d3e8242ca3 Merge pull request #5347 from pacoxu/patch-1
seccomp: ignore unsupported wait-kill flag probe
2026-06-29 15:06:30 +02:00
dependabot[bot]
eba633fcee build(deps): bump github.com/urfave/cli/v3 from 3.10.0 to 3.10.1
Bumps [github.com/urfave/cli/v3](https://github.com/urfave/cli) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/urfave/cli/releases)
- [Changelog](https://github.com/urfave/cli/blob/main/docs/CHANGELOG.md)
- [Commits](https://github.com/urfave/cli/compare/v3.10.0...v3.10.1)

---
updated-dependencies:
- dependency-name: github.com/urfave/cli/v3
  dependency-version: 3.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-29 04:52:31 +00:00
dependabot[bot]
74b3c7cf90 build(deps): bump github.com/moby/sys/user from 0.4.0 to 0.4.1
Bumps [github.com/moby/sys/user](https://github.com/moby/sys) from 0.4.0 to 0.4.1.
- [Release notes](https://github.com/moby/sys/releases)
- [Commits](https://github.com/moby/sys/compare/user/v0.4.0...user/v0.4.1)

---
updated-dependencies:
- dependency-name: github.com/moby/sys/user
  dependency-version: 0.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-28 18:22:32 +00:00
Paco Xu
4d84a3403b seccomp: ignore unsupported wait-kill flag probe
Signed-off-by: Paco Xu <roollingstone@gmail.com>
2026-06-28 13:07:34 +00:00
Akihiro Suda
1aff3ed358 Merge pull request #5345 from cyphar/changelog-1.5
CHANGELOG: forward-port updates from 1.5
2026-06-27 05:12:43 +09:00
Aleksa Sarai
9afaef0175 CHANGELOG: forward-port updates from 1.5
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2026-06-25 23:05:47 +10:00
lfbzhm
bc60126ec1 Merge pull request #5324 from rata/tests/netdev-fixes
Fix netdev tests on CI
2026-06-25 18:37:38 +08:00
Rodrigo Campos
e6aea33b47 tests/integration: Simplify delete_netns()
Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-06-25 11:28:50 +02:00
Rodrigo Campos
bb9d1ccaba tests: Clarify the interface might not be on the host
We try to delete the interface, but it lot of tests it won't be there
unless we failed to move it to the container. Let's just clarify that in
a comment and redirect the error output to /dev/null, as it seems an
error otherwise while it is completely normal.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-06-25 11:28:50 +02:00
Rodrigo Campos
e79bff701a tests: Unset ns_path when deleting the netns
The cleaning is condition on this variable being set. So let's unset it
after we clean the resources.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-06-25 11:28:50 +02:00
Rodrigo Campos
b16ed9a0b8 tests/checkpoint.bats: Move netdev code outside of setup()
We are creating the interface for every test, but there is only one
using it. Let's just call the function to create the netdev on the test
that uses it.

I guess that was the reason we had the "ip link del ..." in teardown.
Because in a lot of tests we were just creating and deleting the
interface on the host.

While we are there, as suggested by lifubang, let's make the "ip link
add" line specify the mtu and mac addr. This way, the interface is not
created without that info and we race with host daemons (like udev) that
_might_ want to change it.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-06-25 11:28:47 +02:00
Kir Kolyshkin
b2ada85ed3 tests: fix dummy0 flakes
Once we add a new network device, systemd-udev may execute some rules.
In particular, we see that on Fedora it sets the MAC address (presumably
based on the host name and device name). This setting races with ours
'ip link set address', as a result, "checkpoint and restore with netdevice"
test sometimes fails telling the MAC address is not as expected.

In the future there may be some other udev rules etc., so the overall
solution is to wait until systemd-udev is finished applying the rules,
thus eliminating the race.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-25 11:20:38 +02:00
lfbzhm
4196f12948 Merge pull request #5342 from opencontainers/dependabot/github_actions/actions/cache-6
build(deps): bump actions/cache from 5 to 6
2026-06-24 13:54:56 +08:00
lfbzhm
a4fe0a3172 Merge pull request #5341 from kolyshkin/modernize-to-lint
ci: bump golangci-lint, move modernize/govet to linters
2026-06-24 13:54:30 +08:00
dependabot[bot]
65b0a12465 build(deps): bump actions/cache from 5 to 6
Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-24 04:52:15 +00:00
Kir Kolyshkin
3a125a799d Merge pull request #5271 from captainmo1/5251-simplify-exec-fifo-wait
libct: simplify exec fifo wait using poll(2)
2026-06-23 11:23:58 -07:00
Kir Kolyshkin
56a14e792e ci: replace modernize job with golangci linters
Instead of using a standalone modernize (and a separate job), add
modernize and go vet (which should be same-as/similar-to go fix) linters
to golangci-lint config.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-23 10:21:10 -07:00
Kir Kolyshkin
c6895881bd ci: bump golangci-lint to v2.12
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-23 10:16:42 -07:00
Rodrigo Campos Catelin
c63f70f883 Merge pull request #5318 from xujihui1985/fix/checkpoint-cgroup2-mount-options
ci: workaround to avoid mutate cgroupv2 mount options
2026-06-23 14:45:03 +02:00
sean
3805b01e8a ci(checkpoint): workaround to avoid mutate cgroupv2 mount options
add --manage-cgroups-mode ignore to avoid pollute cgroupv2 mount options
during unittest and intergration test
https://github.com/checkpoint-restore/criu/issues/3029

Signed-off-by: sean <xujihui1985@gmail.com>
2026-06-23 18:59:03 +08:00
Akihiro Suda
c5cd23698c Merge pull request #5260 from alliasgher/chore/5240-unify-curl
ci: switch build scripts from wget to curl
2026-06-23 11:24:50 +09:00
Rodrigo Campos Catelin
881608b52a Merge pull request #5334 from opencontainers/dependabot/github_actions/actions/checkout-7
build(deps): bump actions/checkout from 6 to 7
2026-06-19 12:20:19 +02:00
Rodrigo Campos Catelin
53ec4c39d0 Merge pull request #5330 from AkihiroSuda/fix-5329
features: propagate version from the root urfave/cli command
2026-06-19 11:04:27 +02:00
dependabot[bot]
b01a783897 build(deps): bump actions/checkout from 6 to 7
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-19 04:52:10 +00:00
Akihiro Suda
7dda063c9a features: propagate version from the root urfave/cli command
Fix #5329
Fix #5331

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2026-06-19 02:27:37 +09:00
Akihiro Suda
a8d82ce580 Merge pull request #5291 from cyphar/libpathrs-0.2.5
deps: update to libpathrs 0.2.5
2026-06-19 01:38:24 +09:00
Aleksa Sarai
1e20abef19 runc: add libpathrs info to --version and features
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2026-06-18 11:57:38 +02:00