Projects
openEuler:24.03:SP1:Everything
systemd
_service:tar_scm:bugfix-for-cgroup-Swap-cgroup-...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:bugfix-for-cgroup-Swap-cgroup-v1-deletion-and-migration.patch of Package systemd
From c003873099e47dccf2e57816291bd6b7de4a5790 Mon Sep 17 00:00:00 2001 From: jiangchuangang <jiangchuangang@huawei.com> Date: Wed, 13 Jul 2022 21:39:06 +0800 Subject: [PATCH] bugfix for cpuset and Delegate --- src/core/cgroup.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/core/cgroup.c b/src/core/cgroup.c index 0e4c94d..e887d49 100644 --- a/src/core/cgroup.c +++ b/src/core/cgroup.c @@ -1963,6 +1963,8 @@ static int unit_update_cgroup( u->cgroup_enabled_mask = result_mask; migrate_mask = u->cgroup_realized_mask ^ target_mask; + if (u->type != UNIT_SLICE && FLAGS_SET(target_mask, CGROUP_MASK_CPUSET) && cg_all_unified() == 0) + migrate_mask |= CGROUP_MASK_CPUSET; } /* Keep track that this is now realized */ @@ -1977,9 +1979,11 @@ static int unit_update_cgroup( * delegated units. */ if (cg_all_unified() == 0) { - r = cg_migrate_v1_controllers(u->manager->cgroup_supported, migrate_mask, u->cgroup_path, migrate_callback, u); - if (r < 0) - log_unit_warning_errno(u, r, "Failed to migrate controller cgroups from %s, ignoring: %m", empty_to_root(u->cgroup_path)); + if (!unit_cgroup_delegate(u)) { + r = cg_migrate_v1_controllers(u->manager->cgroup_supported, migrate_mask, u->cgroup_path, migrate_callback, u); + if (r < 0) + log_unit_warning_errno(u, r, "Failed to migrate controller cgroups from %s, ignoring: %m", empty_to_root(u->cgroup_path)); + } is_root_slice = unit_has_name(u, SPECIAL_ROOT_SLICE); r = cg_trim_v1_controllers(u->manager->cgroup_supported, ~target_mask, u->cgroup_path, !is_root_slice); -- 2.33.0
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2