Received: by 10.213.65.68 with SMTP id h4csp3161206imn; Mon, 9 Apr 2018 15:31:34 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+QgaynnWwLTNZ0LS+iOWH6FlQyeiglONNRpAKeCdcTg1uWvWscJCERTV3BPcbp2EeVufJX X-Received: by 10.99.114.27 with SMTP id n27mr25784339pgc.177.1523313094690; Mon, 09 Apr 2018 15:31:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523313094; cv=none; d=google.com; s=arc-20160816; b=BIdGGadgWfQKUe2qAfGOJ+kaWy3ZqqOk+h4+xtAoGvRNShDsA+n0RCmVLxS0ixzfex Fx1SxsL06n9kH+v9+02VG5zNZI4CiuUPPqFhDpJpH5499EZyKVc7yK2TRAuJExggC7a9 IxTKHq2WlfhTj7aiCTu2dweZm5fibUEAPtjbo+ntG0+FuNqURjJACuVf/gdphZG1x1xF CIwnE0pIo6i/HZSA9YId0TJv0dsqdsCU6C+njmaPPoP9/L3uSyO5ZvjSeKVGJLkqAq6U /WYeF1feoJFK4HMDQLyTXRbbBiPTrLYzEqePfh1voRYsSm+EhhvMn4SbO38T4PtZyjlR 6yjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=tJWzJK9hdJH7k9Ue1ra936zUiUONRWrL4oW2GthPsAc=; b=Bm6SokWHlAJ68laWIu5aNBocFl+xYZjNL/sVEXp9hnD/hwyCpad21/hFJQC2AmxDdm W4xDHobQWq76SoGo+ofZsaPH8G8rOo3dVYBNEI2DoRMH+rN3dHclLq32NPRDhOCkg72G 9tC4YvxLQngrBz3m/dy6kxLhO/bwwZqpwe4BEIJaGCokBM44pZ37EblfMHcspAyPUtSj uNOQv4kSsyoRNG8uuXxyvw/ePGoYtEPCV3DyHHBtbG3axGKJFeThT1KT64oziuLD+1tY l2wIjeBwxopjlS4JwXNUCUH1qaQubV+00AqJcev5+/ROASzdLaq8HaVlJL8OWODCRg5P 04kg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=MA+BoifL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z2si781781pgo.567.2018.04.09.15.30.57; Mon, 09 Apr 2018 15:31:34 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=MA+BoifL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751863AbeDIWYZ (ORCPT + 99 others); Mon, 9 Apr 2018 18:24:25 -0400 Received: from mail-yw0-f181.google.com ([209.85.161.181]:43390 "EHLO mail-yw0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751751AbeDIWYV (ORCPT ); Mon, 9 Apr 2018 18:24:21 -0400 Received: by mail-yw0-f181.google.com with SMTP id i187so3364153ywd.10; Mon, 09 Apr 2018 15:24:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=tJWzJK9hdJH7k9Ue1ra936zUiUONRWrL4oW2GthPsAc=; b=MA+BoifL5M5b93+8eJgBi2pi/GhHjCtceLi02jLjSqU30bIPzcWMOn0/VZoECJ+kss kKdpOB7XCvLT9jOD5OxkmZzXdQ2/+Anqbezxpo+t7srBhkAo8CxZDuNbvsHFVd0JA6Cb 2dRVq5/qrgTtkwmOhrAUK6VYuvkj9vXyeFsEcMe76X9Zc1jAa6iH9nDggMjAtqJzegdN FVuWkLnzMa2J1A/su2BXrePFbx2aMui41AxedEywznZRRE9YdQ2J8nOv0eVw/T+T/Ri0 LI5eVAl7vH+kwV+MMtuSsPl83uJ2PLsWY75fEwUkkX7orbktvpJ8WENan69u/xbGHcba h5FA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=tJWzJK9hdJH7k9Ue1ra936zUiUONRWrL4oW2GthPsAc=; b=lCUeTMdjk5K2Yd4tH0H9G9gWy+helwbTCRsllBQA3W2tPMTHRXNHgxQxwezcieVHkQ aWl4npaBJ9T6norb+O2Cw3RfXD5beOx5THPP7F1t3EBsOyTB1D2BRC27hJMuqtsghKrG KzUJ0lBjQbHE0gYgfcqryuHEDtNbfATLcMS5np7k8c6VXAVkuvaWP1HlSjkqPcFW/C2y foJPXF+XEoSoRWm0AzuFM3RKlrHhb8nI86H0L2KjjMAK3Xtg60oQWCYTffgrEguJyIfL C9zVOmK0J2YzvYtG13rkQOUbKVYRtga7FfFP5QU/wj0u1aXdMydcyOs6roJxhg1OeEh1 8Zmw== X-Gm-Message-State: ALQs6tAKD5w10lOKT7tPpLubtZ3FWorNQ+w1NzvvNabVjcYluOhlv56N PlSvZLLIwa40ziwBhOzwruc= X-Received: by 10.129.209.1 with SMTP id w1mr12035333ywi.461.1523312660662; Mon, 09 Apr 2018 15:24:20 -0700 (PDT) Received: from localhost ([2620:10d:c091:180::1:ce92]) by smtp.gmail.com with ESMTPSA id t66sm712819ywe.8.2018.04.09.15.24.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Apr 2018 15:24:19 -0700 (PDT) Date: Mon, 9 Apr 2018 15:24:17 -0700 From: Tejun Heo To: Patrick Bellasi Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, Ingo Molnar , Peter Zijlstra , "Rafael J . Wysocki" , Viresh Kumar , Vincent Guittot , Paul Turner , Dietmar Eggemann , Morten Rasmussen , Juri Lelli , Joel Fernandes , Steve Muckle Subject: Re: [PATCH 4/7] sched/core: uclamp: add utilization clamping to the CPU controller Message-ID: <20180409222417.GK3126663@devbig577.frc2.facebook.com> References: <20180409165615.2326-1-patrick.bellasi@arm.com> <20180409165615.2326-5-patrick.bellasi@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180409165615.2326-5-patrick.bellasi@arm.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, Patrick. Comments purely on cgroup interface side. On Mon, Apr 09, 2018 at 05:56:12PM +0100, Patrick Bellasi wrote: > This patch extends the CPU controller by adding a couple of new attributes, > util_min and util_max, which can be used to enforce frequency boosting and > capping. Specifically: > > - util_min: defines the minimum CPU utilization which should be considered, > e.g. when schedutil selects the frequency for a CPU while a > task in this group is RUNNABLE. > i.e. the task will run at least at a minimum frequency which > corresponds to the min_util utilization > > - util_max: defines the maximum CPU utilization which should be considered, > e.g. when schedutil selects the frequency for a CPU while a > task in this group is RUNNABLE. > i.e. the task will run up to a maximum frequency which > corresponds to the max_util utilization I'm not too enthusiastic about util_min/max given that it can easily be read as actual utilization based bandwidth control when what's actually implemented, IIUC, is affecting CPU frequency selection. Maybe something like cpu.freq.min/max are better names? > These attributes: > a) are tunable at all hierarchy levels, i.e. at root group level too, thus > allowing to define the minimum and maximum frequency constraints for all > otherwise non-classified tasks (e.g. autogroups) and to be a sort-of > replacement for cpufreq's powersave, ondemand and performance > governors. This is a problem which exists for all other interfaces. For historical and other reasons, at least till now, we've opted to put everything at system level outside of cgroup interface. We might change this in the future and duplicate system-level information and interfaces in the root cgroup but we wanna do that in a more systemtic fashion than adding an one-off knob in the cgroup root. Besides, if a feature makes sense at the system level which is the cgroup root, it makes sense without cgroup mounted or enabled, so it needs a place outside cgroup one way or the other. > b) allow to create subgroups of tasks which are not violating the > utilization constraints defined by the parent group. Tying creation / config operations to the config propagation doesn't work well with delegation and is inconsistent with what other controllers are doing. For cases where the propagated config being visible in a sub cgroup is necessary, please add .effective files. > Tasks on a subgroup can only be more boosted and/or capped, which is Less boosted. .low at a parent level must set the upper bound of .low that all its descendants can have. Thanks. -- tejun