deps: update to github.com/cyphar/filepath-securejoin@v0.3.5#4549
deps: update to github.com/cyphar/filepath-securejoin@v0.3.5#4549lifubang merged 1 commit intoopencontainers:mainfrom
Conversation
This fixes a regression in use of securejoin.MkdirAll, where multiple runc processes racing to create the same mountpoint in a shared rootfs would result in spurious EEXIST errors. In particular, this regression caused issues with BuildKit. Fixes: dd827f7 ("utils: switch to securejoin.MkdirAllHandle") Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
kolyshkin
left a comment
There was a problem hiding this comment.
LGTM (also reviewed cyphar/filepath-securejoin#35, which also LGTM).
|
I think we can make v1.2.3 release now! Another thing, maybe we also need to backport to |
|
@lifubang 1.1.x doesn't use Regarding |
Yes, thanks. |
FWIW I did reproduce this in 1.1.14 as well with steps from #4543 . I didn't notice any meaningful difference in how often it appeared. |
|
Hmmm, that's odd. I would've expected the race window to be much smaller... |
The bug was introduced in a library bump opencontainers/runc#4393 on Sep 11th, 2024 Then it was fixed in opencontainers/runc#4549 on Dec 6th, 2024 During that time, Konvoy was always using the main branch when building runc for Containerd tars. containerd-1.6.33 used in a previous minor release would not have had this bug, but containerd-1.7.22 did introduce it. containerd-1.7.24 built on Dec 11 has the fix ``` containerd-1.6.28-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Fri Sep 13 12:30:10 2024, from Unix, original size modulo 2^32 155238400 containerd-1.6.33-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Jun 26 21:16:52 2024, from Unix, original size modulo 2^32 149504000 containerd-1.7.22-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Tue Sep 24 22:17:43 2024, from Unix, original size modulo 2^32 152832000 containerd-1.7.24-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Dec 11 22:13:07 2024, from Unix, original size modulo 2^32 153128960 ```
The bug was introduced in a library bump opencontainers/runc#4393 on Sep 11th, 2024 Then it was fixed in opencontainers/runc#4549 on Dec 6th, 2024 During that time, Konvoy was always using the main branch when building runc for Containerd tars. containerd-1.6.33 used in a previous minor release would not have had this bug, but containerd-1.7.22 did introduce it. containerd-1.7.24 built on Dec 11 has the fix ``` containerd-1.6.28-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Fri Sep 13 12:30:10 2024, from Unix, original size modulo 2^32 155238400 containerd-1.6.33-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Jun 26 21:16:52 2024, from Unix, original size modulo 2^32 149504000 containerd-1.7.22-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Tue Sep 24 22:17:43 2024, from Unix, original size modulo 2^32 152832000 containerd-1.7.24-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Dec 11 22:13:07 2024, from Unix, original size modulo 2^32 153128960 ```
The bug was introduced in a library bump opencontainers/runc#4393 on Sep 11th, 2024 Then it was fixed in opencontainers/runc#4549 on Dec 6th, 2024 During that time, Konvoy was always using the main branch when building runc for Containerd tars. containerd-1.6.33 used in a previous minor release would not have had this bug, but containerd-1.7.22 did introduce it. containerd-1.7.24 built on Dec 11 has the fix ``` containerd-1.6.28-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Fri Sep 13 12:30:10 2024, from Unix, original size modulo 2^32 155238400 containerd-1.6.33-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Jun 26 21:16:52 2024, from Unix, original size modulo 2^32 149504000 containerd-1.7.22-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Tue Sep 24 22:17:43 2024, from Unix, original size modulo 2^32 152832000 containerd-1.7.24-d2iq.1-rhel-8.6-x86_64.tar.gz: gzip compressed data, last modified: Wed Dec 11 22:13:07 2024, from Unix, original size modulo 2^32 153128960 ```
This fixes a regression in use of securejoin.MkdirAll, where multiple
runc processes racing to create the same mountpoint in a shared rootfs
would result in spurious EEXIST errors. In particular, this regression
caused issues with BuildKit.
Fixes: dd827f7 ("utils: switch to securejoin.MkdirAllHandle")
Fixes #4543
Signed-off-by: Aleksa Sarai cyphar@cyphar.com