Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp1087885ybj; Thu, 7 May 2020 14:38:12 -0700 (PDT) X-Google-Smtp-Source: APiQypJy2FPE3BKYfLxSGw8oYE8AyCyQAgdHtMdLWzJTbp6HPMsGCwdGhOjViztu2Slir7p9tVEv X-Received: by 2002:a17:906:148d:: with SMTP id x13mr3226314ejc.152.1588887492297; Thu, 07 May 2020 14:38:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588887492; cv=none; d=google.com; s=arc-20160816; b=zRVaruhIdQUTtzV+gcGnKgANURMYeAh8SMXmAfveiVc1Qx2C7zCdP9iggHazLp6Jou abo9AZqrX5g11jyuWUHHf4is4myCn4PFEhiE8nLsCkbpLLhLHapeA9Bf9JNbFaHUPvr9 zz4hpL372XpDZQHdW/REA8ASZneSgjQvdfZ9Z8wJX2bDOO0ETvgp3E2U2YW7+72Pl1MY lrvNzaZqR2td/YlEGlNJ22IBUzg3ptl6382YJDR7J01mnPyAS1Fm9MN5+I3+Txp+R95Y jdv8fI5bVfIY7jk2NaAFCovc1G//h6nv3KcOO0s3llREsSdN0lLhMpaJuvk9/lEsFvuv gAOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:in-reply-to :subject:cc:to:from:user-agent:references; bh=39wox2ty287jJUHu3Wv6JxlkYy5P14U+24U5U+6NLfE=; b=0ZIrTmBRpy3tIdbMhQ3a7ZNsinqYJnlvzwi5TYXoNEYWWCe5wdIYAHsqtBfoJ7Ltdt HwqOIWLSUR0C6KoyvkNSmH4oT2nXWwrD2GAfTVg2zxF1B7P8gEVbc3Tzu7UcnJWE9fB1 xQvPxTS6SAsQYbi8nLOnTep1Q2wlUMO9sGNKqSQaWgzRYXs8d3Km1fGCwCK9XBXC651A Regq6/ERl898t2TyKTWwtpviEGHHGdaIszgsfDkzbtk9ezv/VEKLChRT+iRTpREA0mGx kaoD8odXwiRuUiM/ZhdWm0UGFqhJtrdzEe5M/vYPPFdA0L4ol+F+/mPjtVbDrL+ucX+a RYGQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id rv10si3799326ejb.519.2020.05.07.14.37.49; Thu, 07 May 2020 14:38:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726690AbgEGVe2 (ORCPT + 99 others); Thu, 7 May 2020 17:34:28 -0400 Received: from foss.arm.com ([217.140.110.172]:39620 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726320AbgEGVe2 (ORCPT ); Thu, 7 May 2020 17:34:28 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 78E1B1FB; Thu, 7 May 2020 14:34:27 -0700 (PDT) Received: from e113632-lin (e113632-lin.cambridge.arm.com [10.1.194.46]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 61AE93F68F; Thu, 7 May 2020 14:34:19 -0700 (PDT) References: <20200507181012.29791-1-qperret@google.com> User-agent: mu4e 0.9.17; emacs 26.3 From: Valentin Schneider To: Quentin Perret Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, x86@kernel.org, hpa@zytor.com, sudeep.holla@arm.com, gregkh@linuxfoundation.org, rafael@kernel.org, viresh.kumar@linaro.org, peterz@infradead.org, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, mcgrof@kernel.org, keescook@chromium.org, yzaikin@google.com, fweisbec@gmail.com, tkjos@google.com, kernel-team@android.com, Ionela Voinescu Subject: Re: [PATCH 00/14] Modularize schedutil In-reply-to: <20200507181012.29791-1-qperret@google.com> Date: Thu, 07 May 2020 22:34:17 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org (+Ionela) Hi Quentin, Apologies for sidetracking this a bit. On 07/05/20 19:09, Quentin Perret wrote: > Android is trying very hard to use a single kernel image (commonly > called Generic Kernel Image, or GKI), closely aligned with mainline, to > run on all Android devices regardless of the vendor. > > The GKI project intends to not only improve the status quo for Android > users directly (less fragmentation simplifies updatability), but also > to benefit upstream by forcing all vendors to agree on one common > kernel, that we push hard to be aligned with mainline. > > One challenge to implement GKI is to avoid bloating the kernel by > compiling too many things in, especially given that different devices > need different things. As such, anything that can be turned into a > module helps GKI, by offering an alternative to having that component > built-in. This is true for pretty much anything that can be made > modular, including drivers as well as other kernel components, such as > CPUFreq governors. > > Indeed, in practice, Android devices often ship with only one CPUFreq > governor enabled, and don't require any other that would simply waste > memory for no benefits. All CPUFreq governors can already be built as > modules with one notable exception: schedutil. Though popular in > Android, some devices do not use schedutil, which is why it would be > preferable to not have it unconditionally built in GKI. This series is > an attempt to solve this problem, by making schedutil tristate. > I'm curious; why would some Android device not want to roll with schedutil? When it comes to dynamic policies (i.e. forget performance / powersave, and put userspace in a corner), I'd be willing to take a stand and say you should only really be using schedutil nowadays - alignment with the scheduler, uclamp, yadda yadda. AFAIA the only schedutil-related quirk we oughta fix for arm/arm64 is that arch_scale_freq_invariant() thingie, and FWIW I'm hoping to get something regarding this out sometime soonish. After that, I'd actually want to make schedutil the default governor for arm/arm64. I'm not opiniated on the modularization, but if you can, could you please share some more details as to why schedutil cannot fulfill its role of holy messiah of governors for GKI?