Skip to content

fix(libcheck): pull an image that is not on the node yet - #163

Merged
moezdil merged 1 commit into
mainfrom
fix/libcheck-pull-missing-image
Oct 11, 2026
Merged

moezdil merged 1 commit into
mainfrom
fix/libcheck-pull-missing-image

Conversation

@moezdil

@moezdil moezdil commented Oct 11, 2026

Copy link
Copy Markdown
Contributor

/kind bug

The kubelet device manager calls Allocate at pod admission, before it pulls the image. With -musl_fail_closed the first Pod to use an image failed admission because ctr images mount could not find it, and a rejected Pod never pulls the image, so every retry failed the same way. This starts a background ctr images pull when the image is missing and returns ErrImageNotPresent, so the replacement Pod finds the image; Allocate does not wait for the pull.

Refs #104

Reproduced on an MI325X node (k3s 1.37): ubuntu:22.04 and debian:12-slim sliced Pods failed twice before; with the fix the first is rejected with "image is not on the node yet", the image is pulled, and the next Pod starts with LD_AUDIT and the memory limit. A musl image is still refused.

AI assistance was used for this PR.

The kubelet device manager calls Allocate at pod admission, before it pulls
the image. With -musl_fail_closed the first Pod to use an image failed
admission because ctr could not mount it, and a rejected Pod never pulls the
image, so every retry failed the same way.

Start a background ctr pull when the image is missing and return
ErrImageNotPresent, so the rejected Pod's replacement finds the image.

Signed-off-by: mesutoezdil <mesudozdil@gmail.com>
@hami-robot hami-robot Bot added the kind/bug Categorizes issue or PR as related to a bug. label Oct 11, 2026
@hami-robot

hami-robot Bot commented Oct 11, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: moezdil

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@coderabbitai

coderabbitai Bot commented Oct 11, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 5dd7e973-a198-4a8e-88e4-6938f1b1f58d

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@moezdil
moezdil merged commit c777262 into main Oct 11, 2026
11 of 12 checks passed
@moezdil
moezdil deleted the fix/libcheck-pull-missing-image branch October 11, 2026 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind/bug Categorizes issue or PR as related to a bug.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant