Skip to content

Conversation

@alexman-stripe
Copy link

When containers are terminated, cgroup v2 memory metrics under /sys/fs/cgroup may disappear.
Previously, kata-agent assumed these metrics always exist, leading to panics as reported in #138.

This commit returns default value (0) when memory metric files are missing.
This behaviour aligns with cgroup v1, which also defaults to 0 memory metric files are missing:

Submitting a new PR because #116 does not handle MemSwap.fail_cnt, which also causes panics.

FIxes #138

When containers are terminated, cgroup v2 memory metrics under /sys/fs/cgroup may disappear.
Previously, kata-agent assumed these metrics always exist, leading to panics as reported in kata-containers#138.

This commit returns default value (0) when memory metric files are missing.
This behaviour aligns with cgroup v1, which also defaults to 0 memory metric files are missing:
- Memory.limit_in_bytes which maps to m.max https://github.com/kata-containers/cgroups-rs/blob/main/src/memory.rs#L635
- Memory.soft_limit_in_bytes which maps to m.low https://github.com/kata-containers/cgroups-rs/blob/main/src/memory.rs#L661
- MemSwap.fail_cnt: https://github.com/kata-containers/cgroups-rs/blob/main/src/memory.rs#L631

Submitting a new PR because kata-containers#116 does not handle MemSwap.fail_cnt, which will also cause panic.

Signed-off-by: Alex Man <[email protected]>
@alexman-stripe alexman-stripe force-pushed the alexman-stripe/fix-memory-panic branch from 0ecd74f to 48545da Compare September 11, 2024 17:32
@alexman-stripe
Copy link
Author

CI hasn't ran. Trying to trigger it by reopening the PR.

@alexman-stripe
Copy link
Author

Hello @Tim-Zhang, I'm unable to trigger the CI build jobs. Would you mind helping? Thank you.

@fidencio
Copy link
Member

This is a dup of #116, let's have that one merged as that one has been waiting for longer (yes, that's possible!)

Sorry for the delay on this one.

@fidencio fidencio closed this May 28, 2025
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

Successfully merging this pull request may close these issues.

Memory controller panics in some situations

2 participants