-
Notifications
You must be signed in to change notification settings - Fork 586
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Bug Report: CGroup v1 is now deprecated #372
Comments
Thanks for opening this issue. I also opened a thread on community side: https://community.home-assistant.io/t/cgroupsv1-no-longer-supported-by-systemd/742098 edit: |
what is your current workaround @rokam? If so do home assistant logs work for you currently? all my home assistant logs are broken currently,
triggered both via would be interesting if cgroups v1 causes this on "brandnew" systems which require the ugly |
I'm not using arch anymore. But that cmdline is the way |
yeah, the cmdline works "fine" for now at least. sad to hear you left Arch - seems like I'm the only one left with this problem now ;) |
It seems that the supervisor already supports v2. Would you be able to remove it from the kernel cmdline? |
thank you for trying to help! It would explain why nobody has that problem, but they still use cgroup v1: |
As there don't seem to be any apparent plans to change the situation, I hope using v2 doesn't break my whole HA functionality.
doesn't look like there's much time left to wait. edit: I switched to cgroups v2, HA still warns about it (and logs are still broken) but at least the host os is no longer in a pending dying state. |
We do use cgroupsv2 in HAOS, it works quite well. There is one feature of the Supervisor which relies on CGroupsV1 for Supervised installation: Device permission updates (see home-assistant/supervisor#3421). Unfortunately, the way this was implemented broke with CGroupsV2, and it was not straight forward to implement it in a similar fashion. Eventually, I've added device permission update for CGroupsV2 via runc/containerd changes (see home-assistant/os-agent#92 and opencontainers/runc#3402). However, this change did not made it upstream yet to runc/containerd, so it remains a feature of the patched version in HAOS 😢 I've pinged folks again in opencontainers/runc#3402, let's see. If someone is connected to the containerd/OCI community, I'd be glad if you can make things move forward. |
Thank you very much for the heads-up, @agners. Very appreciated! |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. |
systemd is really blackmailing my system with an extra 30s of delay with the force kernel argument |
Personally, I also gave up and disabled cgroupv1. Nothing changed on my side. |
Is that shipped in Debian Bookworm already? 🤔 We kinda have to move away from cgroupsv1, I guess we just need to accept that upstream is not interested in dynamic device permission settings for cgroupsv2 and live with the consequences: Supervised installations won't have support for dynamic hardware update 😢 |
i am on arch, i think rolling distros are impacted first. |
good to see some motion here, thanks all. (personally I disabled cgroups v1, but would be nice to get proper logging back one day) |
What do you mean by proper logging? 🤔 |
hm, all my home assistant logs are empty since I dropped cgroups v1. editing, because offtopic and I want to avoid mail spam: seems like the missing logs are caused by aiohttp:
a quick search for "usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 477" leads me here: edit2: edit3: |
oh, thank you very much for your help, @agners! Very likely the problem lies in gatewayd - haven't touched/looked into it since it worked. sorry for the offtopic noise all edit: the
brought back the main home assistant logs (addons pending, but probably fixable) Thank you very much again @agners! The pointer saved me some hours for sure! |
So I checked quickly what features rely on the CGroups device permission updates. Currently it is used for add-ons to update permissions for mapped devices (see supervisor/docker/addon.py#L829), e.g.:
And those get hot-plugged after the add-on start. In a quick test with Supervised + CGroupsV2 it seems that the OS Agent calls
However, needless to say that permission update attempt doesn't work since that
Ideally we'd make sure that OS Agent returns an error, and that this gets logged. That way we have at least an error in the Supervisor log. |
OS Version
Arch Linux
System Information
Linux pclucas 6.9.5-arch1-1 #1 SMP PREEMPT_DYNAMIC Sun, 16 Jun 2024 19:06:37 +0000 x86_64 GNU/Linux
What happened?
Systemd have deprecated cgroup v1, although it is still able to use v1 adding another kernel parameter. It'll still work for Debian 11, but I think the migration to v2 should be planned.
systemd/systemd#30852
Machine Type
generic-x86-64
Installer output
No response
Relevant log output
No response
ADR
Code of Conduct
The text was updated successfully, but these errors were encountered: