Re: [PATCH 2/2] cgroup/cpuset: Optimize cpuset_attach() on v2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 11/21/22 13:50, Michal Koutný wrote:
On Sat, Nov 12, 2022 at 05:19:39PM -0500, Waiman Long <longman@xxxxxxxxxx> wrote:
+	/*
+	 * In the default hierarchy, enabling cpuset in the child cgroups
+	 * will trigger a number of cpuset_attach() calls with no change
+	 * in effective cpus and mems. In that case, we can optimize out
+	 * by skipping the task iteration and update.
+	 */
+	if (cgroup_subsys_on_dfl(cpuset_cgrp_subsys) &&
+	    !cpus_updated && !mems_updated) {
I'm just wondering -- why is this limited to the default hierarchy only?
IOW why can't v1 skip too (when favorable constness between cpusets).

Cpuset v1 is a bit more complex. Besides cpu and node masks, it also have other flags like the spread flags that we need to looks for changes. Unlike cpuset v2, I don't think it is likely that cpuset_attach() will be called without changes in cpu and node masks. That are the reason why this patch focuses on v2. If it is found that this is not the case, we can always extend the support to v1.

Cheers,
Longman




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [Monitors]

  Powered by Linux