[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250828125631.1978176-1-chenridong@huaweicloud.com>
Date: Thu, 28 Aug 2025 12:56:20 +0000
From: Chen Ridong <chenridong@...weicloud.com>
To: longman@...hat.com,
tj@...nel.org,
hannes@...xchg.org,
mkoutny@...e.com
Cc: cgroups@...r.kernel.org,
linux-kernel@...r.kernel.org,
lujialin4@...wei.com,
chenridong@...wei.com
Subject: [PATCH -next RFC 00/11] Refactor cpus mask setting
From: Chen Ridong <chenridong@...wei.com>
This patch series refactors the CPU mask configuration logic for both
cpuset.cpus and cpuset.cpus.exclusive settings. The primary goal is to
improve code readability through comprehensive function restructuring.
The CPU mask update process follows these steps:
1. Parse user input
2. Skip processing if no actual change to CPU mask
3. Compute trial cpuset's effective exclusive CPUs
4. Validate changes and return error if invalid
5. Handle partition state changes resulting from CPU mask modifications
6. Apply new CPU mask to the cpuset
7. Propagate changes through the hierarchy
The series is organized as follows:
patches 1-3: Code cleanup and preparation for refactoring
patches 4-9: Refactoring of cpuset.cpus configuration logic
patches 10-11: Refactoring of cpuset.cpus.exclusive configuration logic
Chen Ridong (11):
cpuset: move the root cpuset write check earlier
cpuset: remove unused assignment to trialcs->partition_root_state
cpuset: change return type of is_partition_[in]valid to bool
cpuset: Refactor exclusive CPU mask computation logic
cpuset: refactor CPU mask buffer parsing logic
cpuset: introduce cpus_excl_conflict and mems_excl_conflict helpers
cpuset: refactor out invalidate_cs_partition
cpuset: refactor acpus_validate_change
cpuset: refactor partition_cpus_change
cpuset: use parse_cpulist for setting cpus.exclusive
cpuset: use partition_cpus_change for setting exclusive cpus
kernel/cgroup/cpuset.c | 443 ++++++++++++++++++++++-------------------
1 file changed, 239 insertions(+), 204 deletions(-)
--
2.34.1
Powered by blists - more mailing lists