From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on archive.lwn.net X-Spam-Level: X-Spam-Status: No, score=-5.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=unavailable autolearn_force=no version=3.4.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by archive.lwn.net (Postfix) with ESMTP id 3B8D97D085 for ; Wed, 30 May 2018 14:58:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753481AbeE3O5t (ORCPT ); Wed, 30 May 2018 10:57:49 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:44974 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751630AbeE3O5s (ORCPT ); Wed, 30 May 2018 10:57:48 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E4636401EF11; Wed, 30 May 2018 14:57:47 +0000 (UTC) Received: from llong.remote.csb (dhcp-17-81.bos.redhat.com [10.18.17.81]) by smtp.corp.redhat.com (Postfix) with ESMTP id 85B4C20357CA; Wed, 30 May 2018 14:57:46 +0000 (UTC) Subject: Re: [PATCH v9 2/7] cpuset: Add new v2 cpuset.sched.domain_root flag To: Juri Lelli Cc: Tejun Heo , Li Zefan , Johannes Weiner , Peter Zijlstra , Ingo Molnar , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, kernel-team@fb.com, pjt@google.com, luto@amacapital.net, Mike Galbraith , torvalds@linux-foundation.org, Roman Gushchin , Patrick Bellasi References: <1527601294-3444-1-git-send-email-longman@redhat.com> <1527601294-3444-3-git-send-email-longman@redhat.com> <20180530141804.GG3320@localhost.localdomain> From: Waiman Long Organization: Red Hat Message-ID: <044bbb35-fda6-de23-90a3-6b53d4326b5d@redhat.com> Date: Wed, 30 May 2018 10:57:46 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 In-Reply-To: <20180530141804.GG3320@localhost.localdomain> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Scanned-By: MIMEDefang 2.78 on 10.11.54.6 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Wed, 30 May 2018 14:57:48 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Wed, 30 May 2018 14:57:48 +0000 (UTC) for IP:'10.11.54.6' DOMAIN:'int-mx06.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'longman@redhat.com' RCPT:'' Sender: linux-doc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-doc@vger.kernel.org On 05/30/2018 10:18 AM, Juri Lelli wrote: > Hi, > > On 29/05/18 09:41, Waiman Long wrote: > > [...] > >> + cpuset.sched.domain_root >> + A read-write single value file which exists on non-root >> + cpuset-enabled cgroups. It is a binary value flag that accepts >> + either "0" (off) or "1" (on). This flag is set by the parent >> + and is not delegatable. >> + >> + If set, it indicates that the current cgroup is the root of a >> + new scheduling domain or partition that comprises itself and >> + all its descendants except those that are scheduling domain >> + roots themselves and their descendants. The root cgroup is >> + always a scheduling domain root. >> + >> + There are constraints on where this flag can be set. It can >> + only be set in a cgroup if all the following conditions are true. >> + >> + 1) The "cpuset.cpus" is not empty and the list of CPUs are >> + exclusive, i.e. they are not shared by any of its siblings. >> + 2) The parent cgroup is also a scheduling domain root. >> + 3) There is no child cgroups with cpuset enabled. This is >> + for eliminating corner cases that have to be handled if such >> + a condition is allowed. >> + >> + Setting this flag will take the CPUs away from the effective >> + CPUs of the parent cgroup. Once it is set, this flag cannot >> + be cleared if there are any child cgroups with cpuset enabled. >> + Further changes made to "cpuset.cpus" is allowed as long as >> + the first condition above is still true. > IIUC, with the configuration below > > cpuset.cpus.effective:6-11 > cgroup.controllers:cpuset > cpuset.mems.effective:0-1 > cgroup.subtree_control:cpuset > g1/cpuset.cpus.effective:0-5 > g1/cgroup.controllers:cpuset > g1/cpuset.sched.load_balance:1 > g1/cpuset.mems.effective:0-1 > g1/cpuset.cpus:0-5 > g1/cpuset.sched.domain_root:1 > user.slice/cpuset.cpus.effective:6-11 > user.slice/cgroup.controllers:cpuset > user.slice/cpuset.sched.load_balance:1 > user.slice/cpuset.mems.effective:0-1 > user.slice/cpuset.cpus:6-11 > user.slice/cpuset.sched.domain_root:0 > init.scope/cpuset.cpus.effective:6-11 > init.scope/cgroup.controllers:cpuset > init.scope/cpuset.sched.load_balance:1 > init.scope/cpuset.mems.effective:0-1 > init.scope/cpuset.cpus:6-11 > init.scope/cpuset.sched.domain_root:0 > system.slice/cpuset.cpus.effective:6-11 > system.slice/cgroup.controllers:cpuset > system.slice/cpuset.sched.load_balance:1 > system.slice/cpuset.mems.effective:0-1 > system.slice/cpuset.cpus:6-11 > system.slice/cpuset.sched.domain_root:0 > machine.slice/cpuset.cpus.effective:6-11 > machine.slice/cgroup.controllers:cpuset > machine.slice/cpuset.sched.load_balance:1 > machine.slice/cpuset.mems.effective:0-1 > machine.slice/cpuset.cpus:6-11 > machine.slice/cpuset.sched.domain_root:0 > > I should be able to > > # echo 0-4 >g1/cpuset.cpus > > ? > > It doesn't let me. It should allow that. I will fix this issue. > > I'm not sure we actually want to allow that, but that's what would I > expect as per your text above. > > Thanks, > > - Juri > > BTW: thanks a lot for your prompt feedback and hope it's OK if I keep > playing and asking questions. :) Of course. I appreciate your help in looking for issue in the patch that I might have overlooked. Thanks, Longman -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html