Nothing Special   »   [go: up one dir, main page]

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to launch container when host has Swappiness disabled #52

Closed
BenHall opened this issue Dec 18, 2015 · 3 comments
Closed

Unable to launch container when host has Swappiness disabled #52

BenHall opened this issue Dec 18, 2015 · 3 comments

Comments

@BenHall
Copy link
BenHall commented Dec 18, 2015

When launching a redis container I'm getting the error _rpc error: code = 2 desc = "unmarshal runtime.json: json: cannot unmarshal number -1 into Go value
of type uint64" _

This is my config and runtime json.
https://gist.github.com/BenHall/2c1ef2dc8a3494e7a68f

The only -1 is swappiness which makes sense as Docker issues the same warning (WARNING: No swap limit support)

@BenHall
Copy link
Author
BenHall commented Dec 18, 2015

It looks like the underlying issue is with the OpenContainers Spec expecting a uint64.
https://github.com/opencontainers/specs/blob/56b88759a6e087d01b070594eb5f203a3a59c3b2/runtime_config_linux.go#L164

uint64 shouldn't include -1 in the range - http://play.golang.org/p/8PN2PxxBNw

@runcom
Copy link
Contributor
runcom commented Dec 18, 2015

@BenHall BenHall closed this as completed Dec 18, 2015
@BenHall
Copy link
Author
BenHall commented Dec 18, 2015

Great! :)

crosbymichael added a commit to crosbymichael/containerd that referenced this issue Dec 10, 2018
```
1152b96 (HEAD -> master, origin/master)
Merge pull request containerd#73 from gliptak/gofmt1
afd5981 Gofmt cgroup_test
65ce98b Merge pull request containerd#69 from
cclerget/master-weight-pointer
0f372c6 Merge pull request containerd#71 from
JoeWrightss/patch-1
f48bd85 Fixs return error message
10cd53e Merge pull request containerd#70 from
gliptak/patch-1
64bade4 Take value instead of pointer
value
b49c471 Correct ineffassign warning
3bc6dde Merge pull request containerd#68 from
cclerget/master-net_prio-typo
6b552a8 Fix net_prio typo
c0437c3 Merge pull request containerd#67 from
gpanouts/get-all-cgroup-tasks
a31a0ff Add functionality for
retrieving all tasks of a cgroup
82cb49f Merge pull request containerd#63 from
ChrsMark/lenient-subsystems-checking
7d825b2 Add test for cgroups load when
missing hierarchy in one subsystem
f6cbfb4 Change Load function in order
to be more lenient on subsystems' checking
965bb1d Merge pull request containerd#66 from
crosbymichael/systemdci
ab9ec0e (fork/systemdci, systemdci) Add
go-systemd dep for CI testing
0e94a83 Merge pull request containerd#59 from
gliptak/patch-1
4479d11 Merge pull request containerd#62 from
estesp/fix-gofmt
9beb998 Merge pull request containerd#61 from
gliptak/patch-3
9a09e58 Fix gofmt of systemd.go
84e6e6e Merge pull request containerd#60 from
gliptak/patch-2
e13f6cc Add GoReportCard badge to
README
d124595 Add Go 1.11 to Travis
d961ab9 Correct typo
d240072 Merge pull request containerd#57 from
estesp/project-update
e4cf832 Add project references and use
common project travis
8baeff6 Merge pull request containerd#56 from
grantseltzer/patch-1
9de57ff Add godoc badge to README.md
5017d4e Merge pull request containerd#54 from
WeiZhang555/bugfix
13aaafd Bugfix: can't write to cpuset
cgroup
58556f5 Merge pull request containerd#53 from
baude/systemdslicedelegate
15ed73c systemd-239+ no longer allows
delegate slice
3024bc7 Merge pull request containerd#52 from
Sykomaniac/bugfix/slice-name
2596f33 Remove call to unitName
2e2922e Merge pull request containerd#51 from
containerd/type
0f3de2f (type) Fix empty device type
```

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
robertgzr pushed a commit to balena-os/balena-containerd that referenced this issue Mar 4, 2019
```
1152b96 (HEAD -> master, origin/master)
Merge pull request containerd#73 from gliptak/gofmt1
afd5981 Gofmt cgroup_test
65ce98b Merge pull request containerd#69 from
cclerget/master-weight-pointer
0f372c6 Merge pull request containerd#71 from
JoeWrightss/patch-1
f48bd85 Fixs return error message
10cd53e Merge pull request containerd#70 from
gliptak/patch-1
64bade4 Take value instead of pointer
value
b49c471 Correct ineffassign warning
3bc6dde Merge pull request containerd#68 from
cclerget/master-net_prio-typo
6b552a8 Fix net_prio typo
c0437c3 Merge pull request containerd#67 from
gpanouts/get-all-cgroup-tasks
a31a0ff Add functionality for
retrieving all tasks of a cgroup
82cb49f Merge pull request containerd#63 from
ChrsMark/lenient-subsystems-checking
7d825b2 Add test for cgroups load when
missing hierarchy in one subsystem
f6cbfb4 Change Load function in order
to be more lenient on subsystems' checking
965bb1d Merge pull request containerd#66 from
crosbymichael/systemdci
ab9ec0e (fork/systemdci, systemdci) Add
go-systemd dep for CI testing
0e94a83 Merge pull request containerd#59 from
gliptak/patch-1
4479d11 Merge pull request containerd#62 from
estesp/fix-gofmt
9beb998 Merge pull request containerd#61 from
gliptak/patch-3
9a09e58 Fix gofmt of systemd.go
84e6e6e Merge pull request containerd#60 from
gliptak/patch-2
e13f6cc Add GoReportCard badge to
README
d124595 Add Go 1.11 to Travis
d961ab9 Correct typo
d240072 Merge pull request containerd#57 from
estesp/project-update
e4cf832 Add project references and use
common project travis
8baeff6 Merge pull request containerd#56 from
grantseltzer/patch-1
9de57ff Add godoc badge to README.md
5017d4e Merge pull request containerd#54 from
WeiZhang555/bugfix
13aaafd Bugfix: can't write to cpuset
cgroup
58556f5 Merge pull request containerd#53 from
baude/systemdslicedelegate
15ed73c systemd-239+ no longer allows
delegate slice
3024bc7 Merge pull request containerd#52 from
Sykomaniac/bugfix/slice-name
2596f33 Remove call to unitName
2e2922e Merge pull request containerd#51 from
containerd/type
0f3de2f (type) Fix empty device type
```

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
thaJeztah added a commit to thaJeztah/docker that referenced this issue Mar 13, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
docker-jenkins pushed a commit to docker-archive/docker-ce that referenced this issue Mar 15, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 386b06eacd689bb98fb4117087614466c6e130f3
Component: engine
thaJeztah added a commit to thaJeztah/docker that referenced this issue Mar 15, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 386b06e)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
docker-jenkins pushed a commit to docker-archive/docker-ce that referenced this issue Mar 20, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 386b06eacd689bb98fb4117087614466c6e130f3)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: a36f6bfc36d2425c693097102b91152fa8f80012
Component: engine
adhulipa pushed a commit to adhulipa/docker that referenced this issue Apr 11, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
kiku-jw pushed a commit to kiku-jw/moby that referenced this issue May 16, 2019
Relevant changes:

- containerd/containerd#51 Fix empty device type
- containerd/containerd#52 Remove call to unitName
  - Calling unitName incorrectly appends -slice onto the end of the slice cgroup we are looking for
  - addresses containerd/containerd#47 cgroups: cgroup deleted
- containerd/containerd#53 systemd-239+ no longer allows delegate slice
- containerd/containerd#54 Bugfix: can't write to cpuset cgroup
- containerd/containerd#63 Makes Load function more lenient on subsystems' checking
  - addresses containerd/containerd#58 Very strict checking of subsystems' existence while loading cgroup
- containerd/containerd#67 Add functionality for retrieving all tasks of a cgroup
- containerd/containerd#68 Fix net_prio typo
- containerd/containerd#69 Blkio weight/leafWeight pointer value
- containerd/containerd#77 Check for non-active/supported cgroups
  - addresses containerd/containerd#76 unable to find * in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown
  - addresses docker/for-linux#552 Error response from daemon: unable to find "cpuacct" in controller set: unknown
  - addresses docker/for-linux#545 Raspbian: Error response from daemon: unable to find "net_prio" in controller set: unknown

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
jepio pushed a commit to jepio/containerd that referenced this issue Dec 3, 2021
aravindhp added a commit to openshift/containerd that referenced this issue Jul 27, 2023
containerd 1.6.22

Welcome to the v1.6.22 release of containerd!

The twenty-second patch release for containerd 1.6 contains various fixes and updates.

* **RunC: Update runc binary to v1.1.8** ([containerd#8842](containerd#8842))
* **CRI: Fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty** ([containerd#8823](containerd#8823))
* **CRI: Write generated CNI config atomically** ([containerd#8826](containerd#8826))
* **Fix concurrent writes for `UpdateContainerStats`** ([containerd#8819](containerd#8819))
* **Make checkContainerTimestamps less strict on Windows** ([containerd#8827](containerd#8827))
* **Port-Forward: Correctly handle known errors** ([containerd#8805](containerd#8805))
* **Resolve docker.NewResolver race condition** ([containerd#8800](containerd#8800))
* **SecComp: Always allow `name_to_handle_at`** ([containerd#8754](containerd#8754))
* **Adding support to run hcsshim from local clone** ([containerd#8713](containerd#8713))
* **Pinned image support** ([containerd#8720](containerd#8720))
* **Runtime/V2/RunC: Handle early exits w/o big locks** ([containerd#8695](containerd#8695))
* **CRITool: Move up to CRI-TOOLS v1.27.0** ([containerd#7997](containerd#7997))
* **Fix cpu architecture detection issue on emulated ARM platform** ([containerd#8533](containerd#8533))
* **Task: Don't `close()` io before `cancel()`** ([containerd#8659](containerd#8659))
* **Fix panic when remote differ returns empty result** ([containerd#8640](containerd#8640))
* **Plugins: Notify readiness when registered plugins are ready** ([containerd#8583](containerd#8583))
* **Unwrap io errors in server connection receive error handling** ([ttrpc#143](containerd/ttrpc#143))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Akihiro Suda
* Phil Estes
* Sebastiaan van Stijn
* Derek McGowan
* Wei Fu
* Kazuyoshi Kato
* Austin Vazquez
* Samuel Karp
* dependabot[bot]
* Jin Dong
* Maksym Pavlenko
* Mike Brown
* Shingo Omura
* Akhil Mohan
* Bjorn Neergaard
* Laura Brehm
* Tony Fang
* Aditi Sharma
* Andrey Epifanov
* Benjamin Wang
* Brian Goff
* Cory Snider
* Daniel Canter
* Daniel Lenar
* Henry Wang
* Luca Comellini
* Madhav Jivrajani
* Mahamed Ali
* Mohit Sharma
* Oliver Radwell
* Priyanka Saggu
* Qasim Sarfraz
* Takumasa Sakao
* wangxiang
* zounengren

<details><summary>95 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.22 ([containerd#8863](containerd#8863))
  * [`0770a4601`](containerd@0770a46) [release/1.6] Add release notes for v1.6.22
* [release/1.6] migrate to community owned bucket for node e2e tests ([containerd#8876](containerd#8876))
  * [`512a672af`](containerd@512a672) migrate to community owned bucket
* [release/1.6] cri: memory.memsw.limit_in_bytes: no such file or directory ([containerd#8870](containerd#8870))
  * [`b585ff155`](containerd@b585ff1) cri: memory.memsw.limit_in_bytes: no such file or directory
* [release/1.6] Update go-restful to v3.10.1  ([containerd#8412](containerd#8412))
  * [`a322077bf`](containerd@a322077) go.mod: github.com/emicklei/go-restful/v3 v3.10.1
* [release/1.6 backport] update runc binary to v1.1.8 ([containerd#8842](containerd#8842))
  * [`b3ac068eb`](containerd@b3ac068) update runc binary to v1.1.8
* [release/1.6 backport] ci: remove libseccomp-dev installation for nightly ([containerd#8773](containerd#8773))
  * [`6e2bcb6dd`](containerd@6e2bcb6) ci: remove libseccomp-dev installation for nightly
* [release/1.6 backport] [CRI] fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty ([containerd#8823](containerd#8823))
  * [`cd06f23af`](containerd@cd06f23) capture desc variable in range variable just in case that it run in parallel mode
  * [`30f5c6a1f`](containerd@30f5c6a) Use t.TempDir instead of os.MkdirTemp
  * [`59d8363ef`](containerd@59d8363) fix userstr for dditionalGids on Linux
* [release/1.6 backport] cri: write generated CNI config atomically ([containerd#8826](containerd#8826))
  * [`d75bf78c2`](containerd@d75bf78) ctr: update WritePidFile to use atomicfile
  * [`5f70b23c1`](containerd@5f70b23) shim: WritePidFile & WriteAddress use atomicfile
  * [`505d444b0`](containerd@505d444) cri: write generated CNI config atomically on Unix
  * [`b2d2d3829`](containerd@b2d2d38) atomicfile: new package for atomic file writes
* [release/1.6 backport] Fix concurrent writes for UpdateContainerStats ([containerd#8819](containerd#8819))
  * [`9f650143f`](containerd@9f65014) Fix concurrent writes for UpdateContainerStats
* [release/1.6 backport] Make checkContainerTimestamps less strict on Windows ([containerd#8827](containerd#8827))
  * [`568ce91ca`](containerd@568ce91) Make checkContainerTimestamps less strict on Windows
* [release/1.6 backport] dependency: bump go.etcd.io/bbolt to v1.3.7 ([containerd#8817](containerd#8817))
  * [`d2f47192a`](containerd@d2f4719) dependency: bump go.etcd.io/bbolt to v1.3.7
  * [`fb56dc245`](containerd@fb56dc2) [release/1.6] vendor: github.com/stretchr/testify v1.8.1
* [release/1.6 backport] Move logrus setup code to log package ([containerd#8832](containerd#8832))
  * [`7fbd5dc89`](containerd@7fbd5dc) Move logrus setup code to log package
* [release/1.6 backport] release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles ([containerd#8820](containerd#8820))
  * [`59a143670`](containerd@59a1436) release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles
* [release/1.6 backport] Use version 2 configuration format in docs ([containerd#8821](containerd#8821))
  * [`5b51b79e2`](containerd@5b51b79) [release/1.6] fix remaining "v1 config" plugin IDs
  * [`b7cf26d8d`](containerd@b7cf26d) docs: Fix sample config.toml syntax
  * [`fcdaf0966`](containerd@fcdaf09) docs: migrate config v1 to v2
  * [`728d5c5f0`](containerd@728d5c5) Use version 2 config and mention containerd config command
* [release/1.6] update go to go1.19.11 ([containerd#8816](containerd#8816))
  * [`81aa14718`](containerd@81aa147) [release/1.6] update go to go1.19.11
* [release/1.6] update go to go1.19.10 ([containerd#8715](containerd#8715))
  * [`17cd86629`](containerd@17cd866) [release/1.6] update go to go1.19.10
* [release/1.6 backport] bugfix(port-forward): Correctly handle known errors ([containerd#8805](containerd#8805))
  * [`fdb65f214`](containerd@fdb65f2) bugfix(port-forward): Correctly handle known errors
* [release/1.6] Resolve docker.NewResolver race condition ([containerd#8800](containerd#8800))
  * [`b5784af66`](containerd@b5784af) Change http.Header copy to builtin Clone
  * [`31c466f82`](containerd@31c466f) Resolve docker.NewResolver race condition
* [release/1.6 backport] vendor: github.com/containerd/zfs v1.1.0 ([containerd#8781](containerd#8781))
  * [`be6406ca6`](containerd@be6406c) vendor: github.com/containerd/zfs v1.1.0
  * [`9f1260074`](containerd@9f12600) [release/1.6] vendor gotest.tools/v3 v3.5.0
  * [`526e9e0ce`](containerd@526e9e0) Bump grpc to v1.50.1
  * [`0e7d2d121`](containerd@0e7d2d1) go.mod: github.com/sirupsen/logrus v1.9.0
  * [`5b153c621`](containerd@5b153c6) go.mod: github.com/moby/sys/mountinfo v0.6.2
  * [`9dee60960`](containerd@9dee609) go.mod: github.com/moby/sys/mountinfo v0.6.0
* [release/1.6 backport] seccomp: always allow name_to_handle_at ([containerd#8754](containerd#8754))
  * [`07ea7b9e7`](containerd@07ea7b9) seccomp: always allow name_to_handle_at
* [release/1.6 backport] Update ginkgo to match cri-tools' version ([containerd#8759](containerd#8759))
  * [`1dae51fed`](containerd@1dae51f) Update ginkgo to match cri-tools' version
* [release/1.6 backport] integration/client: add timeout to `TestShimOOMScore` ([containerd#8749](containerd#8749))
  * [`bd76ab978`](containerd@bd76ab9) integration/client: add timeout to `TestShimOOMScore`
* [release/1.6 backport] Adding support to run hcsshim from local clone ([containerd#8713](containerd#8713))
  * [`8e14eccb2`](containerd@8e14ecc) Adding support to run hcsshim from local clone
* [1.6] Add Fields type alias to log package ([containerd#8739](containerd#8739))
  * [`9f2cdd589`](containerd@9f2cdd5) Add Fields type alias to log package
* [release/1.6] Pinned image support ([containerd#8720](containerd#8720))
  * [`f4713aad0`](containerd@f4713aa) Pinned image support
* [release/1.6 backport] runtime/v2/runc: handle early exits w/o big locks ([containerd#8695](containerd#8695))
  * [`dbeec47b4`](containerd@dbeec47) runtime/v2/runc: handle early exits w/o big locks
* [release/1.6 backport] move up to CRI-TOOLS v1.27.0 ([containerd#7997](containerd#7997))
  * [`a8e01e40a`](containerd@a8e01e4) move to CRI-TOOLS v1.27.0
  * [`755f80698`](containerd@755f806) move up to CRI-TOOLS v1.26.0
  * [`b29cc035f`](containerd@b29cc03) bump critools into ca1571e6edd116b2c95f52e3dfa0b4779b74223a
  * [`9138999f5`](containerd@9138999) Upgrade critools from 1.24.1 to 1.25.0
* [release/1.6] cherry-pick: No more nondistributable layers in MS registry ([containerd#8691](containerd#8691))
  * [`712ff8eb3`](containerd@712ff8e) No more nondistributable layers in MS registry
* [release/1.6] Fix cpu architecture detection issue on emulated ARM platform ([containerd#8533](containerd#8533))
  * [`2b16e4bfa`](containerd@2b16e4b) Add unit test to function GetCPUVariantFromArch
  * [`106e36ec3`](containerd@106e36e) Use uname machine field to get CPU variant if fails at /proc/cpuinfo
* [release/1.6] Update lint timeout ([containerd#8679](containerd#8679))
  * [`287fdfea6`](containerd@287fdfe) Update linter timeout to match main branch
* [release/1.6 backport] task: don't `close()` io before `cancel()` ([containerd#8659](containerd#8659))
  * [`b27f7daa5`](containerd@b27f7da) task: don't `close()` io before `cancel()`
* [release/1.6] update test box to fedora 37 ([containerd#8660](containerd#8660))
  * [`8b4c69248`](containerd@8b4c692) update test box to fedora 37
* [release/1.6] Revert "Downgrade MinGW to version 10.2.0" ([containerd#8668](containerd#8668))
  * [`81d6085af`](containerd@81d6085) Revert "Downgrade MinGW to version 10.2.0"
* [release/1.6 backport] Fix panic when remote differ returns empty result ([containerd#8640](containerd#8640))
  * [`f98122378`](containerd@f981223) Fix panic when remote differ returns empty result
* [1.6] Bump x/net to 0.8 ([containerd#8642](containerd#8642))
  * [`aa53f272d`](containerd@aa53f27) Bump x/net to 0.8
* [release/1.6 backport] remotes/docker: ResolverOptions: fix deprecation comments ([containerd#8620](containerd#8620))
  * [`56ff20839`](containerd@56ff208) remotes/docker: ResolverOptions: fix deprecation comments
* [release/1.6] notify readiness when registered plugins are ready ([containerd#8583](containerd#8583))
  * [`bccaf68b7`](containerd@bccaf68) notify readiness when registered plugins are ready
* [release/1.6] Update ttrpc to 1.1.2 ([containerd#8528](containerd#8528))
  * [`1cdbbe76b`](containerd@1cdbbe7) Update ttrpc to 1.1.2
</p>
</details>

<details><summary>2 commits</summary>
<p>

* [release/1.1] Unwrap io errors in server connection receive error handling ([containerd#143](containerd/ttrpc#143))
  * [`d5f7eed`](containerd/ttrpc@d5f7eed) Unwrap io errors in server connection receive error handling
</p>
</details>

<details><summary>49 commits</summary>
<p>

* gofumpt and update status badges ([containerd#75](containerd/zfs#75))
  * [`5e3457b`](containerd/zfs@5e3457b) TestZFSUsage: use t.TempDir()
  * [`6e9c675`](containerd/zfs@6e9c675) README: update badges
  * [`ff17a79`](containerd/zfs@ff17a79) gofmt code
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1 ([containerd#73](containerd/zfs#73))
  * [`d3485b9`](containerd/zfs@d3485b9) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1
* gha: fix golangci-lint, and upgrade to v1.52.2 ([containerd#74](containerd/zfs#74))
  * [`23c831a`](containerd/zfs@23c831a) remove pre-go1.17 build-tags, and fix missing build-tags in plugin
  * [`e5acd95`](containerd/zfs@e5acd95) gha: fix golangci-lint, upgrade to v1.52.2
* Bump github.com/containerd/containerd from 1.6.12 to 1.6.18 ([containerd#72](containerd/zfs#72))
  * [`00b96c2`](containerd/zfs@00b96c2) Bump github.com/containerd/containerd from 1.6.12 to 1.6.18
* Bump github.com/containerd/containerd from 1.6.9 to 1.6.12 ([containerd#69](containerd/zfs#69))
  * [`a099def`](containerd/zfs@a099def) Bump github.com/containerd/containerd from 1.6.9 to 1.6.12
* Add CodeQL analysis workflow ([containerd#67](containerd/zfs#67))
  * [`fee1db7`](containerd/zfs@fee1db7) Add CodeQL analysis workflow
* Update GitHub actions CI workflow ([containerd#66](containerd/zfs#66))
  * [`b8b7ab2`](containerd/zfs@b8b7ab2) Update GitHub actions CI workflow
* Upgrade compiler to Go 1.19 and update dependencies ([containerd#68](containerd/zfs#68))
  * [`3e729b3`](containerd/zfs@3e729b3) Update dependencies
  * [`3c003f8`](containerd/zfs@3c003f8) Upgrade compiler to Go 1.19
* Remove references to io/ioutil package ([containerd#65](containerd/zfs#65))
  * [`d700762`](containerd/zfs@d700762) Remove references to io/ioutil package
* Update go.mod and move to supported Go version ([containerd#62](containerd/zfs#62))
  * [`f52906e`](containerd/zfs@f52906e) Update Go version to supported version
  * [`79ca2cb`](containerd/zfs@79ca2cb) Update containerd depedency to latest
* go.mod: github.com/mistifyio/go-zfs v3.0.0 ([containerd#59](containerd/zfs#59))
  * [`2e3db29`](containerd/zfs@2e3db29) go.mod: github.com/mistifyio/go-zfs v3.0.0
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309 ([containerd#58](containerd/zfs#58))
  * [`d904e63`](containerd/zfs@d904e63) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309
* Update vendoring to containerd 1.6.x ([containerd#57](containerd/zfs#57))
  * [`e021180`](containerd/zfs@e021180) Update vendoring to containerd 1.6.x
* Bump github.com/containerd/containerd from 1.5.8 to 1.5.9 ([containerd#55](containerd/zfs#55))
  * [`fc0c9a9`](containerd/zfs@fc0c9a9) Bump github.com/containerd/containerd from 1.5.8 to 1.5.9
* Bump github.com/containerd/containerd from 1.5.5 to 1.5.8 ([containerd#54](containerd/zfs#54))
  * [`5d2f28c`](containerd/zfs@5d2f28c) Bump github.com/containerd/containerd from 1.5.5 to 1.5.8
* follow-up-containerd#52: fix the order of cause in fmt.Errorf ([containerd#53](containerd/zfs#53))
  * [`b3f193d`](containerd/zfs@b3f193d) follow-up-containerd#52: fix the order of cause in fmt.Errorf
* replace pkg/errors ([containerd#52](containerd/zfs#52))
  * [`d5b0a2f`](containerd/zfs@d5b0a2f) replace pkg/errors
* Bump github.com/containerd/containerd from 1.5.2 to 1.5.4 ([containerd#51](containerd/zfs#51))
  * [`fd6afa5`](containerd/zfs@fd6afa5) Bump github.com/containerd/containerd from 1.5.2 to 1.5.4
* Bump containerd to 1.5.2 ([containerd#50](containerd/zfs#50))
  * [`aef875e`](containerd/zfs@aef875e) bump containerd to 1.5.2
* Rename branches from master to main ([containerd#49](containerd/zfs#49))
  * [`35c6af7`](containerd/zfs@35c6af7) Rename branches from master to main
* sync up with containerd 1.5 GA  ([containerd#47](containerd/zfs#47))
  * [`3d5efef`](containerd/zfs@3d5efef) vendor sync up with containerd 1.5 ga
* README.md: fix CI badge ([containerd#46](containerd/zfs#46))
  * [`0977d81`](containerd/zfs@0977d81) README.md: fix CI badge
</p>
</details>

* **github.com/containerd/ttrpc**        v1.1.1 -> v1.1.2
* **github.com/containerd/zfs**          v1.0.0 -> v1.1.0
* **github.com/emicklei/go-restful/v3**  v3.7.3 -> v3.10.1
* **github.com/google/go-cmp**           v0.5.6 -> v0.5.9
* **github.com/google/uuid**             v1.2.0 -> v1.3.0
* **github.com/mistifyio/go-zfs/v3**     v3.0.1 **_new_**
* **github.com/moby/sys/mountinfo**      v0.5.0 -> v0.6.2
* **github.com/sirupsen/logrus**         v1.8.1 -> v1.9.0
* **github.com/stretchr/testify**        v1.7.0 -> v1.8.1
* **go.etcd.io/bbolt**                   v1.3.6 -> v1.3.7
* **golang.org/x/net**                   a158d28d115b -> v0.8.0
* **golang.org/x/sys**                   8c9f86f7a55f -> v0.6.0
* **golang.org/x/term**                  03fcf44c2211 -> v0.6.0
* **golang.org/x/text**                  v0.3.7 -> v0.8.0
* **google.golang.org/grpc**             v1.47.0 -> v1.50.1
* **google.golang.org/protobuf**         v1.28.0 -> v1.28.1
* **gotest.tools/v3**                    v3.0.3 -> v3.5.0

Previous release can be found at [v1.6.21](https://github.com/containerd/containerd/releases/tag/v1.6.21)
aravindhp added a commit to openshift/containerd that referenced this issue Jul 27, 2023
containerd 1.6.22

Welcome to the v1.6.22 release of containerd!

The twenty-second patch release for containerd 1.6 contains various fixes and updates.

* **RunC: Update runc binary to v1.1.8** ([containerd#8842](containerd#8842))
* **CRI: Fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty** ([containerd#8823](containerd#8823))
* **CRI: Write generated CNI config atomically** ([containerd#8826](containerd#8826))
* **Fix concurrent writes for `UpdateContainerStats`** ([containerd#8819](containerd#8819))
* **Make checkContainerTimestamps less strict on Windows** ([containerd#8827](containerd#8827))
* **Port-Forward: Correctly handle known errors** ([containerd#8805](containerd#8805))
* **Resolve docker.NewResolver race condition** ([containerd#8800](containerd#8800))
* **SecComp: Always allow `name_to_handle_at`** ([containerd#8754](containerd#8754))
* **Adding support to run hcsshim from local clone** ([containerd#8713](containerd#8713))
* **Pinned image support** ([containerd#8720](containerd#8720))
* **Runtime/V2/RunC: Handle early exits w/o big locks** ([containerd#8695](containerd#8695))
* **CRITool: Move up to CRI-TOOLS v1.27.0** ([containerd#7997](containerd#7997))
* **Fix cpu architecture detection issue on emulated ARM platform** ([containerd#8533](containerd#8533))
* **Task: Don't `close()` io before `cancel()`** ([containerd#8659](containerd#8659))
* **Fix panic when remote differ returns empty result** ([containerd#8640](containerd#8640))
* **Plugins: Notify readiness when registered plugins are ready** ([containerd#8583](containerd#8583))
* **Unwrap io errors in server connection receive error handling** ([ttrpc#143](containerd/ttrpc#143))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Akihiro Suda
* Phil Estes
* Sebastiaan van Stijn
* Derek McGowan
* Wei Fu
* Kazuyoshi Kato
* Austin Vazquez
* Samuel Karp
* dependabot[bot]
* Jin Dong
* Maksym Pavlenko
* Mike Brown
* Shingo Omura
* Akhil Mohan
* Bjorn Neergaard
* Laura Brehm
* Tony Fang
* Aditi Sharma
* Andrey Epifanov
* Benjamin Wang
* Brian Goff
* Cory Snider
* Daniel Canter
* Daniel Lenar
* Henry Wang
* Luca Comellini
* Madhav Jivrajani
* Mahamed Ali
* Mohit Sharma
* Oliver Radwell
* Priyanka Saggu
* Qasim Sarfraz
* Takumasa Sakao
* wangxiang
* zounengren

<details><summary>95 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.22 ([containerd#8863](containerd#8863))
  * [`0770a4601`](containerd@0770a46) [release/1.6] Add release notes for v1.6.22
* [release/1.6] migrate to community owned bucket for node e2e tests ([containerd#8876](containerd#8876))
  * [`512a672af`](containerd@512a672) migrate to community owned bucket
* [release/1.6] cri: memory.memsw.limit_in_bytes: no such file or directory ([containerd#8870](containerd#8870))
  * [`b585ff155`](containerd@b585ff1) cri: memory.memsw.limit_in_bytes: no such file or directory
* [release/1.6] Update go-restful to v3.10.1  ([containerd#8412](containerd#8412))
  * [`a322077bf`](containerd@a322077) go.mod: github.com/emicklei/go-restful/v3 v3.10.1
* [release/1.6 backport] update runc binary to v1.1.8 ([containerd#8842](containerd#8842))
  * [`b3ac068eb`](containerd@b3ac068) update runc binary to v1.1.8
* [release/1.6 backport] ci: remove libseccomp-dev installation for nightly ([containerd#8773](containerd#8773))
  * [`6e2bcb6dd`](containerd@6e2bcb6) ci: remove libseccomp-dev installation for nightly
* [release/1.6 backport] [CRI] fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty ([containerd#8823](containerd#8823))
  * [`cd06f23af`](containerd@cd06f23) capture desc variable in range variable just in case that it run in parallel mode
  * [`30f5c6a1f`](containerd@30f5c6a) Use t.TempDir instead of os.MkdirTemp
  * [`59d8363ef`](containerd@59d8363) fix userstr for dditionalGids on Linux
* [release/1.6 backport] cri: write generated CNI config atomically ([containerd#8826](containerd#8826))
  * [`d75bf78c2`](containerd@d75bf78) ctr: update WritePidFile to use atomicfile
  * [`5f70b23c1`](containerd@5f70b23) shim: WritePidFile & WriteAddress use atomicfile
  * [`505d444b0`](containerd@505d444) cri: write generated CNI config atomically on Unix
  * [`b2d2d3829`](containerd@b2d2d38) atomicfile: new package for atomic file writes
* [release/1.6 backport] Fix concurrent writes for UpdateContainerStats ([containerd#8819](containerd#8819))
  * [`9f650143f`](containerd@9f65014) Fix concurrent writes for UpdateContainerStats
* [release/1.6 backport] Make checkContainerTimestamps less strict on Windows ([containerd#8827](containerd#8827))
  * [`568ce91ca`](containerd@568ce91) Make checkContainerTimestamps less strict on Windows
* [release/1.6 backport] dependency: bump go.etcd.io/bbolt to v1.3.7 ([containerd#8817](containerd#8817))
  * [`d2f47192a`](containerd@d2f4719) dependency: bump go.etcd.io/bbolt to v1.3.7
  * [`fb56dc245`](containerd@fb56dc2) [release/1.6] vendor: github.com/stretchr/testify v1.8.1
* [release/1.6 backport] Move logrus setup code to log package ([containerd#8832](containerd#8832))
  * [`7fbd5dc89`](containerd@7fbd5dc) Move logrus setup code to log package
* [release/1.6 backport] release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles ([containerd#8820](containerd#8820))
  * [`59a143670`](containerd@59a1436) release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles
* [release/1.6 backport] Use version 2 configuration format in docs ([containerd#8821](containerd#8821))
  * [`5b51b79e2`](containerd@5b51b79) [release/1.6] fix remaining "v1 config" plugin IDs
  * [`b7cf26d8d`](containerd@b7cf26d) docs: Fix sample config.toml syntax
  * [`fcdaf0966`](containerd@fcdaf09) docs: migrate config v1 to v2
  * [`728d5c5f0`](containerd@728d5c5) Use version 2 config and mention containerd config command
* [release/1.6] update go to go1.19.11 ([containerd#8816](containerd#8816))
  * [`81aa14718`](containerd@81aa147) [release/1.6] update go to go1.19.11
* [release/1.6] update go to go1.19.10 ([containerd#8715](containerd#8715))
  * [`17cd86629`](containerd@17cd866) [release/1.6] update go to go1.19.10
* [release/1.6 backport] bugfix(port-forward): Correctly handle known errors ([containerd#8805](containerd#8805))
  * [`fdb65f214`](containerd@fdb65f2) bugfix(port-forward): Correctly handle known errors
* [release/1.6] Resolve docker.NewResolver race condition ([containerd#8800](containerd#8800))
  * [`b5784af66`](containerd@b5784af) Change http.Header copy to builtin Clone
  * [`31c466f82`](containerd@31c466f) Resolve docker.NewResolver race condition
* [release/1.6 backport] vendor: github.com/containerd/zfs v1.1.0 ([containerd#8781](containerd#8781))
  * [`be6406ca6`](containerd@be6406c) vendor: github.com/containerd/zfs v1.1.0
  * [`9f1260074`](containerd@9f12600) [release/1.6] vendor gotest.tools/v3 v3.5.0
  * [`526e9e0ce`](containerd@526e9e0) Bump grpc to v1.50.1
  * [`0e7d2d121`](containerd@0e7d2d1) go.mod: github.com/sirupsen/logrus v1.9.0
  * [`5b153c621`](containerd@5b153c6) go.mod: github.com/moby/sys/mountinfo v0.6.2
  * [`9dee60960`](containerd@9dee609) go.mod: github.com/moby/sys/mountinfo v0.6.0
* [release/1.6 backport] seccomp: always allow name_to_handle_at ([containerd#8754](containerd#8754))
  * [`07ea7b9e7`](containerd@07ea7b9) seccomp: always allow name_to_handle_at
* [release/1.6 backport] Update ginkgo to match cri-tools' version ([containerd#8759](containerd#8759))
  * [`1dae51fed`](containerd@1dae51f) Update ginkgo to match cri-tools' version
* [release/1.6 backport] integration/client: add timeout to `TestShimOOMScore` ([containerd#8749](containerd#8749))
  * [`bd76ab978`](containerd@bd76ab9) integration/client: add timeout to `TestShimOOMScore`
* [release/1.6 backport] Adding support to run hcsshim from local clone ([containerd#8713](containerd#8713))
  * [`8e14eccb2`](containerd@8e14ecc) Adding support to run hcsshim from local clone
* [1.6] Add Fields type alias to log package ([containerd#8739](containerd#8739))
  * [`9f2cdd589`](containerd@9f2cdd5) Add Fields type alias to log package
* [release/1.6] Pinned image support ([containerd#8720](containerd#8720))
  * [`f4713aad0`](containerd@f4713aa) Pinned image support
* [release/1.6 backport] runtime/v2/runc: handle early exits w/o big locks ([containerd#8695](containerd#8695))
  * [`dbeec47b4`](containerd@dbeec47) runtime/v2/runc: handle early exits w/o big locks
* [release/1.6 backport] move up to CRI-TOOLS v1.27.0 ([containerd#7997](containerd#7997))
  * [`a8e01e40a`](containerd@a8e01e4) move to CRI-TOOLS v1.27.0
  * [`755f80698`](containerd@755f806) move up to CRI-TOOLS v1.26.0
  * [`b29cc035f`](containerd@b29cc03) bump critools into ca1571e6edd116b2c95f52e3dfa0b4779b74223a
  * [`9138999f5`](containerd@9138999) Upgrade critools from 1.24.1 to 1.25.0
* [release/1.6] cherry-pick: No more nondistributable layers in MS registry ([containerd#8691](containerd#8691))
  * [`712ff8eb3`](containerd@712ff8e) No more nondistributable layers in MS registry
* [release/1.6] Fix cpu architecture detection issue on emulated ARM platform ([containerd#8533](containerd#8533))
  * [`2b16e4bfa`](containerd@2b16e4b) Add unit test to function GetCPUVariantFromArch
  * [`106e36ec3`](containerd@106e36e) Use uname machine field to get CPU variant if fails at /proc/cpuinfo
* [release/1.6] Update lint timeout ([containerd#8679](containerd#8679))
  * [`287fdfea6`](containerd@287fdfe) Update linter timeout to match main branch
* [release/1.6 backport] task: don't `close()` io before `cancel()` ([containerd#8659](containerd#8659))
  * [`b27f7daa5`](containerd@b27f7da) task: don't `close()` io before `cancel()`
* [release/1.6] update test box to fedora 37 ([containerd#8660](containerd#8660))
  * [`8b4c69248`](containerd@8b4c692) update test box to fedora 37
* [release/1.6] Revert "Downgrade MinGW to version 10.2.0" ([containerd#8668](containerd#8668))
  * [`81d6085af`](containerd@81d6085) Revert "Downgrade MinGW to version 10.2.0"
* [release/1.6 backport] Fix panic when remote differ returns empty result ([containerd#8640](containerd#8640))
  * [`f98122378`](containerd@f981223) Fix panic when remote differ returns empty result
* [1.6] Bump x/net to 0.8 ([containerd#8642](containerd#8642))
  * [`aa53f272d`](containerd@aa53f27) Bump x/net to 0.8
* [release/1.6 backport] remotes/docker: ResolverOptions: fix deprecation comments ([containerd#8620](containerd#8620))
  * [`56ff20839`](containerd@56ff208) remotes/docker: ResolverOptions: fix deprecation comments
* [release/1.6] notify readiness when registered plugins are ready ([containerd#8583](containerd#8583))
  * [`bccaf68b7`](containerd@bccaf68) notify readiness when registered plugins are ready
* [release/1.6] Update ttrpc to 1.1.2 ([containerd#8528](containerd#8528))
  * [`1cdbbe76b`](containerd@1cdbbe7) Update ttrpc to 1.1.2
</p>
</details>

<details><summary>2 commits</summary>
<p>

* [release/1.1] Unwrap io errors in server connection receive error handling ([containerd#143](containerd/ttrpc#143))
  * [`d5f7eed`](containerd/ttrpc@d5f7eed) Unwrap io errors in server connection receive error handling
</p>
</details>

<details><summary>49 commits</summary>
<p>

* gofumpt and update status badges ([containerd#75](containerd/zfs#75))
  * [`5e3457b`](containerd/zfs@5e3457b) TestZFSUsage: use t.TempDir()
  * [`6e9c675`](containerd/zfs@6e9c675) README: update badges
  * [`ff17a79`](containerd/zfs@ff17a79) gofmt code
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1 ([containerd#73](containerd/zfs#73))
  * [`d3485b9`](containerd/zfs@d3485b9) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1
* gha: fix golangci-lint, and upgrade to v1.52.2 ([containerd#74](containerd/zfs#74))
  * [`23c831a`](containerd/zfs@23c831a) remove pre-go1.17 build-tags, and fix missing build-tags in plugin
  * [`e5acd95`](containerd/zfs@e5acd95) gha: fix golangci-lint, upgrade to v1.52.2
* Bump github.com/containerd/containerd from 1.6.12 to 1.6.18 ([containerd#72](containerd/zfs#72))
  * [`00b96c2`](containerd/zfs@00b96c2) Bump github.com/containerd/containerd from 1.6.12 to 1.6.18
* Bump github.com/containerd/containerd from 1.6.9 to 1.6.12 ([containerd#69](containerd/zfs#69))
  * [`a099def`](containerd/zfs@a099def) Bump github.com/containerd/containerd from 1.6.9 to 1.6.12
* Add CodeQL analysis workflow ([containerd#67](containerd/zfs#67))
  * [`fee1db7`](containerd/zfs@fee1db7) Add CodeQL analysis workflow
* Update GitHub actions CI workflow ([containerd#66](containerd/zfs#66))
  * [`b8b7ab2`](containerd/zfs@b8b7ab2) Update GitHub actions CI workflow
* Upgrade compiler to Go 1.19 and update dependencies ([containerd#68](containerd/zfs#68))
  * [`3e729b3`](containerd/zfs@3e729b3) Update dependencies
  * [`3c003f8`](containerd/zfs@3c003f8) Upgrade compiler to Go 1.19
* Remove references to io/ioutil package ([containerd#65](containerd/zfs#65))
  * [`d700762`](containerd/zfs@d700762) Remove references to io/ioutil package
* Update go.mod and move to supported Go version ([containerd#62](containerd/zfs#62))
  * [`f52906e`](containerd/zfs@f52906e) Update Go version to supported version
  * [`79ca2cb`](containerd/zfs@79ca2cb) Update containerd depedency to latest
* go.mod: github.com/mistifyio/go-zfs v3.0.0 ([containerd#59](containerd/zfs#59))
  * [`2e3db29`](containerd/zfs@2e3db29) go.mod: github.com/mistifyio/go-zfs v3.0.0
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309 ([containerd#58](containerd/zfs#58))
  * [`d904e63`](containerd/zfs@d904e63) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309
* Update vendoring to containerd 1.6.x ([containerd#57](containerd/zfs#57))
  * [`e021180`](containerd/zfs@e021180) Update vendoring to containerd 1.6.x
* Bump github.com/containerd/containerd from 1.5.8 to 1.5.9 ([containerd#55](containerd/zfs#55))
  * [`fc0c9a9`](containerd/zfs@fc0c9a9) Bump github.com/containerd/containerd from 1.5.8 to 1.5.9
* Bump github.com/containerd/containerd from 1.5.5 to 1.5.8 ([containerd#54](containerd/zfs#54))
  * [`5d2f28c`](containerd/zfs@5d2f28c) Bump github.com/containerd/containerd from 1.5.5 to 1.5.8
* follow-up-containerd#52: fix the order of cause in fmt.Errorf ([containerd#53](containerd/zfs#53))
  * [`b3f193d`](containerd/zfs@b3f193d) follow-up-containerd#52: fix the order of cause in fmt.Errorf
* replace pkg/errors ([containerd#52](containerd/zfs#52))
  * [`d5b0a2f`](containerd/zfs@d5b0a2f) replace pkg/errors
* Bump github.com/containerd/containerd from 1.5.2 to 1.5.4 ([containerd#51](containerd/zfs#51))
  * [`fd6afa5`](containerd/zfs@fd6afa5) Bump github.com/containerd/containerd from 1.5.2 to 1.5.4
* Bump containerd to 1.5.2 ([containerd#50](containerd/zfs#50))
  * [`aef875e`](containerd/zfs@aef875e) bump containerd to 1.5.2
* Rename branches from master to main ([containerd#49](containerd/zfs#49))
  * [`35c6af7`](containerd/zfs@35c6af7) Rename branches from master to main
* sync up with containerd 1.5 GA  ([containerd#47](containerd/zfs#47))
  * [`3d5efef`](containerd/zfs@3d5efef) vendor sync up with containerd 1.5 ga
* README.md: fix CI badge ([containerd#46](containerd/zfs#46))
  * [`0977d81`](containerd/zfs@0977d81) README.md: fix CI badge
</p>
</details>

* **github.com/containerd/ttrpc**        v1.1.1 -> v1.1.2
* **github.com/containerd/zfs**          v1.0.0 -> v1.1.0
* **github.com/emicklei/go-restful/v3**  v3.7.3 -> v3.10.1
* **github.com/google/go-cmp**           v0.5.6 -> v0.5.9
* **github.com/google/uuid**             v1.2.0 -> v1.3.0
* **github.com/mistifyio/go-zfs/v3**     v3.0.1 **_new_**
* **github.com/moby/sys/mountinfo**      v0.5.0 -> v0.6.2
* **github.com/sirupsen/logrus**         v1.8.1 -> v1.9.0
* **github.com/stretchr/testify**        v1.7.0 -> v1.8.1
* **go.etcd.io/bbolt**                   v1.3.6 -> v1.3.7
* **golang.org/x/net**                   a158d28d115b -> v0.8.0
* **golang.org/x/sys**                   8c9f86f7a55f -> v0.6.0
* **golang.org/x/term**                  03fcf44c2211 -> v0.6.0
* **golang.org/x/text**                  v0.3.7 -> v0.8.0
* **google.golang.org/grpc**             v1.47.0 -> v1.50.1
* **google.golang.org/protobuf**         v1.28.0 -> v1.28.1
* **gotest.tools/v3**                    v3.0.3 -> v3.5.0

Previous release can be found at [v1.6.21](https://github.com/containerd/containerd/releases/tag/v1.6.21)
aravindhp added a commit to openshift/containerd that referenced this issue Jul 27, 2023
containerd 1.6.22

Welcome to the v1.6.22 release of containerd!

The twenty-second patch release for containerd 1.6 contains various fixes and updates.

* **RunC: Update runc binary to v1.1.8** ([containerd#8842](containerd#8842))
* **CRI: Fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty** ([containerd#8823](containerd#8823))
* **CRI: Write generated CNI config atomically** ([containerd#8826](containerd#8826))
* **Fix concurrent writes for `UpdateContainerStats`** ([containerd#8819](containerd#8819))
* **Make checkContainerTimestamps less strict on Windows** ([containerd#8827](containerd#8827))
* **Port-Forward: Correctly handle known errors** ([containerd#8805](containerd#8805))
* **Resolve docker.NewResolver race condition** ([containerd#8800](containerd#8800))
* **SecComp: Always allow `name_to_handle_at`** ([containerd#8754](containerd#8754))
* **Adding support to run hcsshim from local clone** ([containerd#8713](containerd#8713))
* **Pinned image support** ([containerd#8720](containerd#8720))
* **Runtime/V2/RunC: Handle early exits w/o big locks** ([containerd#8695](containerd#8695))
* **CRITool: Move up to CRI-TOOLS v1.27.0** ([containerd#7997](containerd#7997))
* **Fix cpu architecture detection issue on emulated ARM platform** ([containerd#8533](containerd#8533))
* **Task: Don't `close()` io before `cancel()`** ([containerd#8659](containerd#8659))
* **Fix panic when remote differ returns empty result** ([containerd#8640](containerd#8640))
* **Plugins: Notify readiness when registered plugins are ready** ([containerd#8583](containerd#8583))
* **Unwrap io errors in server connection receive error handling** ([ttrpc#143](containerd/ttrpc#143))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Akihiro Suda
* Phil Estes
* Sebastiaan van Stijn
* Derek McGowan
* Wei Fu
* Kazuyoshi Kato
* Austin Vazquez
* Samuel Karp
* dependabot[bot]
* Jin Dong
* Maksym Pavlenko
* Mike Brown
* Shingo Omura
* Akhil Mohan
* Bjorn Neergaard
* Laura Brehm
* Tony Fang
* Aditi Sharma
* Andrey Epifanov
* Benjamin Wang
* Brian Goff
* Cory Snider
* Daniel Canter
* Daniel Lenar
* Henry Wang
* Luca Comellini
* Madhav Jivrajani
* Mahamed Ali
* Mohit Sharma
* Oliver Radwell
* Priyanka Saggu
* Qasim Sarfraz
* Takumasa Sakao
* wangxiang
* zounengren

<details><summary>95 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.22 ([containerd#8863](containerd#8863))
  * [`0770a4601`](containerd@0770a46) [release/1.6] Add release notes for v1.6.22
* [release/1.6] migrate to community owned bucket for node e2e tests ([containerd#8876](containerd#8876))
  * [`512a672af`](containerd@512a672) migrate to community owned bucket
* [release/1.6] cri: memory.memsw.limit_in_bytes: no such file or directory ([containerd#8870](containerd#8870))
  * [`b585ff155`](containerd@b585ff1) cri: memory.memsw.limit_in_bytes: no such file or directory
* [release/1.6] Update go-restful to v3.10.1  ([containerd#8412](containerd#8412))
  * [`a322077bf`](containerd@a322077) go.mod: github.com/emicklei/go-restful/v3 v3.10.1
* [release/1.6 backport] update runc binary to v1.1.8 ([containerd#8842](containerd#8842))
  * [`b3ac068eb`](containerd@b3ac068) update runc binary to v1.1.8
* [release/1.6 backport] ci: remove libseccomp-dev installation for nightly ([containerd#8773](containerd#8773))
  * [`6e2bcb6dd`](containerd@6e2bcb6) ci: remove libseccomp-dev installation for nightly
* [release/1.6 backport] [CRI] fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty ([containerd#8823](containerd#8823))
  * [`cd06f23af`](containerd@cd06f23) capture desc variable in range variable just in case that it run in parallel mode
  * [`30f5c6a1f`](containerd@30f5c6a) Use t.TempDir instead of os.MkdirTemp
  * [`59d8363ef`](containerd@59d8363) fix userstr for dditionalGids on Linux
* [release/1.6 backport] cri: write generated CNI config atomically ([containerd#8826](containerd#8826))
  * [`d75bf78c2`](containerd@d75bf78) ctr: update WritePidFile to use atomicfile
  * [`5f70b23c1`](containerd@5f70b23) shim: WritePidFile & WriteAddress use atomicfile
  * [`505d444b0`](containerd@505d444) cri: write generated CNI config atomically on Unix
  * [`b2d2d3829`](containerd@b2d2d38) atomicfile: new package for atomic file writes
* [release/1.6 backport] Fix concurrent writes for UpdateContainerStats ([containerd#8819](containerd#8819))
  * [`9f650143f`](containerd@9f65014) Fix concurrent writes for UpdateContainerStats
* [release/1.6 backport] Make checkContainerTimestamps less strict on Windows ([containerd#8827](containerd#8827))
  * [`568ce91ca`](containerd@568ce91) Make checkContainerTimestamps less strict on Windows
* [release/1.6 backport] dependency: bump go.etcd.io/bbolt to v1.3.7 ([containerd#8817](containerd#8817))
  * [`d2f47192a`](containerd@d2f4719) dependency: bump go.etcd.io/bbolt to v1.3.7
  * [`fb56dc245`](containerd@fb56dc2) [release/1.6] vendor: github.com/stretchr/testify v1.8.1
* [release/1.6 backport] Move logrus setup code to log package ([containerd#8832](containerd#8832))
  * [`7fbd5dc89`](containerd@7fbd5dc) Move logrus setup code to log package
* [release/1.6 backport] release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles ([containerd#8820](containerd#8820))
  * [`59a143670`](containerd@59a1436) release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles
* [release/1.6 backport] Use version 2 configuration format in docs ([containerd#8821](containerd#8821))
  * [`5b51b79e2`](containerd@5b51b79) [release/1.6] fix remaining "v1 config" plugin IDs
  * [`b7cf26d8d`](containerd@b7cf26d) docs: Fix sample config.toml syntax
  * [`fcdaf0966`](containerd@fcdaf09) docs: migrate config v1 to v2
  * [`728d5c5f0`](containerd@728d5c5) Use version 2 config and mention containerd config command
* [release/1.6] update go to go1.19.11 ([containerd#8816](containerd#8816))
  * [`81aa14718`](containerd@81aa147) [release/1.6] update go to go1.19.11
* [release/1.6] update go to go1.19.10 ([containerd#8715](containerd#8715))
  * [`17cd86629`](containerd@17cd866) [release/1.6] update go to go1.19.10
* [release/1.6 backport] bugfix(port-forward): Correctly handle known errors ([containerd#8805](containerd#8805))
  * [`fdb65f214`](containerd@fdb65f2) bugfix(port-forward): Correctly handle known errors
* [release/1.6] Resolve docker.NewResolver race condition ([containerd#8800](containerd#8800))
  * [`b5784af66`](containerd@b5784af) Change http.Header copy to builtin Clone
  * [`31c466f82`](containerd@31c466f) Resolve docker.NewResolver race condition
* [release/1.6 backport] vendor: github.com/containerd/zfs v1.1.0 ([containerd#8781](containerd#8781))
  * [`be6406ca6`](containerd@be6406c) vendor: github.com/containerd/zfs v1.1.0
  * [`9f1260074`](containerd@9f12600) [release/1.6] vendor gotest.tools/v3 v3.5.0
  * [`526e9e0ce`](containerd@526e9e0) Bump grpc to v1.50.1
  * [`0e7d2d121`](containerd@0e7d2d1) go.mod: github.com/sirupsen/logrus v1.9.0
  * [`5b153c621`](containerd@5b153c6) go.mod: github.com/moby/sys/mountinfo v0.6.2
  * [`9dee60960`](containerd@9dee609) go.mod: github.com/moby/sys/mountinfo v0.6.0
* [release/1.6 backport] seccomp: always allow name_to_handle_at ([containerd#8754](containerd#8754))
  * [`07ea7b9e7`](containerd@07ea7b9) seccomp: always allow name_to_handle_at
* [release/1.6 backport] Update ginkgo to match cri-tools' version ([containerd#8759](containerd#8759))
  * [`1dae51fed`](containerd@1dae51f) Update ginkgo to match cri-tools' version
* [release/1.6 backport] integration/client: add timeout to `TestShimOOMScore` ([containerd#8749](containerd#8749))
  * [`bd76ab978`](containerd@bd76ab9) integration/client: add timeout to `TestShimOOMScore`
* [release/1.6 backport] Adding support to run hcsshim from local clone ([containerd#8713](containerd#8713))
  * [`8e14eccb2`](containerd@8e14ecc) Adding support to run hcsshim from local clone
* [1.6] Add Fields type alias to log package ([containerd#8739](containerd#8739))
  * [`9f2cdd589`](containerd@9f2cdd5) Add Fields type alias to log package
* [release/1.6] Pinned image support ([containerd#8720](containerd#8720))
  * [`f4713aad0`](containerd@f4713aa) Pinned image support
* [release/1.6 backport] runtime/v2/runc: handle early exits w/o big locks ([containerd#8695](containerd#8695))
  * [`dbeec47b4`](containerd@dbeec47) runtime/v2/runc: handle early exits w/o big locks
* [release/1.6 backport] move up to CRI-TOOLS v1.27.0 ([containerd#7997](containerd#7997))
  * [`a8e01e40a`](containerd@a8e01e4) move to CRI-TOOLS v1.27.0
  * [`755f80698`](containerd@755f806) move up to CRI-TOOLS v1.26.0
  * [`b29cc035f`](containerd@b29cc03) bump critools into ca1571e6edd116b2c95f52e3dfa0b4779b74223a
  * [`9138999f5`](containerd@9138999) Upgrade critools from 1.24.1 to 1.25.0
* [release/1.6] cherry-pick: No more nondistributable layers in MS registry ([containerd#8691](containerd#8691))
  * [`712ff8eb3`](containerd@712ff8e) No more nondistributable layers in MS registry
* [release/1.6] Fix cpu architecture detection issue on emulated ARM platform ([containerd#8533](containerd#8533))
  * [`2b16e4bfa`](containerd@2b16e4b) Add unit test to function GetCPUVariantFromArch
  * [`106e36ec3`](containerd@106e36e) Use uname machine field to get CPU variant if fails at /proc/cpuinfo
* [release/1.6] Update lint timeout ([containerd#8679](containerd#8679))
  * [`287fdfea6`](containerd@287fdfe) Update linter timeout to match main branch
* [release/1.6 backport] task: don't `close()` io before `cancel()` ([containerd#8659](containerd#8659))
  * [`b27f7daa5`](containerd@b27f7da) task: don't `close()` io before `cancel()`
* [release/1.6] update test box to fedora 37 ([containerd#8660](containerd#8660))
  * [`8b4c69248`](containerd@8b4c692) update test box to fedora 37
* [release/1.6] Revert "Downgrade MinGW to version 10.2.0" ([containerd#8668](containerd#8668))
  * [`81d6085af`](containerd@81d6085) Revert "Downgrade MinGW to version 10.2.0"
* [release/1.6 backport] Fix panic when remote differ returns empty result ([containerd#8640](containerd#8640))
  * [`f98122378`](containerd@f981223) Fix panic when remote differ returns empty result
* [1.6] Bump x/net to 0.8 ([containerd#8642](containerd#8642))
  * [`aa53f272d`](containerd@aa53f27) Bump x/net to 0.8
* [release/1.6 backport] remotes/docker: ResolverOptions: fix deprecation comments ([containerd#8620](containerd#8620))
  * [`56ff20839`](containerd@56ff208) remotes/docker: ResolverOptions: fix deprecation comments
* [release/1.6] notify readiness when registered plugins are ready ([containerd#8583](containerd#8583))
  * [`bccaf68b7`](containerd@bccaf68) notify readiness when registered plugins are ready
* [release/1.6] Update ttrpc to 1.1.2 ([containerd#8528](containerd#8528))
  * [`1cdbbe76b`](containerd@1cdbbe7) Update ttrpc to 1.1.2
</p>
</details>

<details><summary>2 commits</summary>
<p>

* [release/1.1] Unwrap io errors in server connection receive error handling ([containerd#143](containerd/ttrpc#143))
  * [`d5f7eed`](containerd/ttrpc@d5f7eed) Unwrap io errors in server connection receive error handling
</p>
</details>

<details><summary>49 commits</summary>
<p>

* gofumpt and update status badges ([containerd#75](containerd/zfs#75))
  * [`5e3457b`](containerd/zfs@5e3457b) TestZFSUsage: use t.TempDir()
  * [`6e9c675`](containerd/zfs@6e9c675) README: update badges
  * [`ff17a79`](containerd/zfs@ff17a79) gofmt code
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1 ([containerd#73](containerd/zfs#73))
  * [`d3485b9`](containerd/zfs@d3485b9) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1
* gha: fix golangci-lint, and upgrade to v1.52.2 ([containerd#74](containerd/zfs#74))
  * [`23c831a`](containerd/zfs@23c831a) remove pre-go1.17 build-tags, and fix missing build-tags in plugin
  * [`e5acd95`](containerd/zfs@e5acd95) gha: fix golangci-lint, upgrade to v1.52.2
* Bump github.com/containerd/containerd from 1.6.12 to 1.6.18 ([containerd#72](containerd/zfs#72))
  * [`00b96c2`](containerd/zfs@00b96c2) Bump github.com/containerd/containerd from 1.6.12 to 1.6.18
* Bump github.com/containerd/containerd from 1.6.9 to 1.6.12 ([containerd#69](containerd/zfs#69))
  * [`a099def`](containerd/zfs@a099def) Bump github.com/containerd/containerd from 1.6.9 to 1.6.12
* Add CodeQL analysis workflow ([containerd#67](containerd/zfs#67))
  * [`fee1db7`](containerd/zfs@fee1db7) Add CodeQL analysis workflow
* Update GitHub actions CI workflow ([containerd#66](containerd/zfs#66))
  * [`b8b7ab2`](containerd/zfs@b8b7ab2) Update GitHub actions CI workflow
* Upgrade compiler to Go 1.19 and update dependencies ([containerd#68](containerd/zfs#68))
  * [`3e729b3`](containerd/zfs@3e729b3) Update dependencies
  * [`3c003f8`](containerd/zfs@3c003f8) Upgrade compiler to Go 1.19
* Remove references to io/ioutil package ([containerd#65](containerd/zfs#65))
  * [`d700762`](containerd/zfs@d700762) Remove references to io/ioutil package
* Update go.mod and move to supported Go version ([containerd#62](containerd/zfs#62))
  * [`f52906e`](containerd/zfs@f52906e) Update Go version to supported version
  * [`79ca2cb`](containerd/zfs@79ca2cb) Update containerd depedency to latest
* go.mod: github.com/mistifyio/go-zfs v3.0.0 ([containerd#59](containerd/zfs#59))
  * [`2e3db29`](containerd/zfs@2e3db29) go.mod: github.com/mistifyio/go-zfs v3.0.0
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309 ([containerd#58](containerd/zfs#58))
  * [`d904e63`](containerd/zfs@d904e63) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309
* Update vendoring to containerd 1.6.x ([containerd#57](containerd/zfs#57))
  * [`e021180`](containerd/zfs@e021180) Update vendoring to containerd 1.6.x
* Bump github.com/containerd/containerd from 1.5.8 to 1.5.9 ([containerd#55](containerd/zfs#55))
  * [`fc0c9a9`](containerd/zfs@fc0c9a9) Bump github.com/containerd/containerd from 1.5.8 to 1.5.9
* Bump github.com/containerd/containerd from 1.5.5 to 1.5.8 ([containerd#54](containerd/zfs#54))
  * [`5d2f28c`](containerd/zfs@5d2f28c) Bump github.com/containerd/containerd from 1.5.5 to 1.5.8
* follow-up-containerd#52: fix the order of cause in fmt.Errorf ([containerd#53](containerd/zfs#53))
  * [`b3f193d`](containerd/zfs@b3f193d) follow-up-containerd#52: fix the order of cause in fmt.Errorf
* replace pkg/errors ([containerd#52](containerd/zfs#52))
  * [`d5b0a2f`](containerd/zfs@d5b0a2f) replace pkg/errors
* Bump github.com/containerd/containerd from 1.5.2 to 1.5.4 ([containerd#51](containerd/zfs#51))
  * [`fd6afa5`](containerd/zfs@fd6afa5) Bump github.com/containerd/containerd from 1.5.2 to 1.5.4
* Bump containerd to 1.5.2 ([containerd#50](containerd/zfs#50))
  * [`aef875e`](containerd/zfs@aef875e) bump containerd to 1.5.2
* Rename branches from master to main ([containerd#49](containerd/zfs#49))
  * [`35c6af7`](containerd/zfs@35c6af7) Rename branches from master to main
* sync up with containerd 1.5 GA  ([containerd#47](containerd/zfs#47))
  * [`3d5efef`](containerd/zfs@3d5efef) vendor sync up with containerd 1.5 ga
* README.md: fix CI badge ([containerd#46](containerd/zfs#46))
  * [`0977d81`](containerd/zfs@0977d81) README.md: fix CI badge
</p>
</details>

* **github.com/containerd/ttrpc**        v1.1.1 -> v1.1.2
* **github.com/containerd/zfs**          v1.0.0 -> v1.1.0
* **github.com/emicklei/go-restful/v3**  v3.7.3 -> v3.10.1
* **github.com/google/go-cmp**           v0.5.6 -> v0.5.9
* **github.com/google/uuid**             v1.2.0 -> v1.3.0
* **github.com/mistifyio/go-zfs/v3**     v3.0.1 **_new_**
* **github.com/moby/sys/mountinfo**      v0.5.0 -> v0.6.2
* **github.com/sirupsen/logrus**         v1.8.1 -> v1.9.0
* **github.com/stretchr/testify**        v1.7.0 -> v1.8.1
* **go.etcd.io/bbolt**                   v1.3.6 -> v1.3.7
* **golang.org/x/net**                   a158d28d115b -> v0.8.0
* **golang.org/x/sys**                   8c9f86f7a55f -> v0.6.0
* **golang.org/x/term**                  03fcf44c2211 -> v0.6.0
* **golang.org/x/text**                  v0.3.7 -> v0.8.0
* **google.golang.org/grpc**             v1.47.0 -> v1.50.1
* **google.golang.org/protobuf**         v1.28.0 -> v1.28.1
* **gotest.tools/v3**                    v3.0.3 -> v3.5.0

Previous release can be found at [v1.6.21](https://github.com/containerd/containerd/releases/tag/v1.6.21)
jseba pushed a commit to jseba/containerd that referenced this issue Aug 25, 2023
xinyangge-db added a commit to xinyangge-db/containerd that referenced this issue Nov 28, 2023
containerd#52)

`containerd` relies on a goroutine `processExits` to scan for exited
init processes continuously. This works as long as the init process has
ever been started. For non-checkpoint scenario, it is always the case
since the runc process will be morphed to the init process for the
container under creation, so, by definition, it has been started. For
checkpoint scenario, it works as long as the init process has been
successfully restored. The only exception here is when the restoration
fails and no init process has ever been started -- processExits won't
be able to identify the process as exited, causing both timeout and
resource leakages when terminating the container. To handle the case,
we proactively mark the current process as exited on restoration failures.

Before the fix -- the failed executor falls into the `Unknown` state.
```
ubuntu@ip-10-4-122-239:~$ sudo crictl ps -a
CONTAINER           IMAGE               CREATED             STATE               NAME                        ATTEMPT             POD ID              POD
e208b1744b74b       8d5f199a3b6a3       8 minutes ago       Running             executor                    1                   5f6996e00ebf7       dbr-restore-test-ip-10-4-122-239
c3edc54fd0c2a       8d5f199a3b6a3       8 minutes ago       Unknown             executor                    0                   5f6996e00ebf7       dbr-restore-test-ip-10-4-122-239
```

After the fix -- the failed executor successfully falls into the
`Exited` state
```
ubuntu@ip-10-4-122-239:~$ sudo crictl ps -a
CONTAINER           IMAGE               CREATED             STATE               NAME                        ATTEMPT             POD ID              POD
84fb8f2304c48       8d5f199a3b6a3       17 seconds ago      Running             executor                    1                   03468d710f714       dbr-restore-test-ip-10-4-122-239
5285c15be701b       8d5f199a3b6a3       30 seconds ago      Exited              executor                    0                   03468d710f714       dbr-restore-test-ip-10-4-122-239
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants