Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp2105030pxa; Mon, 3 Aug 2020 07:36:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyK+HBv9p0gpxgSHAWnxaDNpuP3x6twSFXXD+3uNcxe09bbVC4+YzHT5Vj5vs2YqmG1Ndli X-Received: by 2002:a05:6402:1758:: with SMTP id v24mr16627179edx.274.1596465408697; Mon, 03 Aug 2020 07:36:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596465408; cv=none; d=google.com; s=arc-20160816; b=iUNo/wx79H0Iux4xvLts8dYJUyy7S9Z2sbU4q/oMVosTX8JZjYZwSzF1BOYP+cR1mS 8GppvWStuqHYm+FyhdKbLu1kUxG1gprjmfW8ec3axDFhjiMEhqFZ0UNutqNqnw6SYs7s pedqgL29hVJPs+kpZ/swgyf0Qdd2kB/XYDo1QR9rgQKiS31p5ce7DYZckgcOTdWfdTlM PRBkFYZGwzag+2eb+GsufLQujQIp1t6N2P+Uxf+/LSlvaEiZGik/l0G2xRIK3daR5Hpx qbmvOVDmFM1cg4iyeRZINmiYqQDiY66d9gEQuiNP36YamgaBBwx24xADq/AcyCksJT4h 0qXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=CSryihUrOfV/QpASOmMQXnPhqAteV/tdNxvfNf+2Xfg=; b=aHOl75e27t2w4TJ8vpax3B3f4g0k5vPvVUUihoAdP7+P7iKI5jjNoqeL0AC9V6bUMh yaqHAxSKxv01aGspJvH8PAyy6Bwc6KmnaPCC9u5l+fMSnAsinkuwE0xKMNpABnenw+o3 5Gd67AvfkOM6eo6QFCWWlL5hW1tWxduhSDeGgmIrEBUbPpxCBG0Q+2IsxkMnw7hdJTC5 ceCi+CLx65M2jJCpEQMvBWd1pZloItXydIsR0WrmOtgsDkwmiGTPQx6jdIb7aaVVdkH0 tqLG1RxNFRMEeAAnXwyszoNFrhEs/R+NPAN9dJWSKPoyBxpJoa/YTe/I2HTOsfLB5K2M Q2Eg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=f6NQsPx1; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id mm22si10504346ejb.735.2020.08.03.07.36.25; Mon, 03 Aug 2020 07:36:48 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=f6NQsPx1; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728427AbgHCOd1 (ORCPT + 99 others); Mon, 3 Aug 2020 10:33:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33650 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726358AbgHCOd0 (ORCPT ); Mon, 3 Aug 2020 10:33:26 -0400 Received: from mail-pf1-x444.google.com (mail-pf1-x444.google.com [IPv6:2607:f8b0:4864:20::444]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 69962C06174A; Mon, 3 Aug 2020 07:33:26 -0700 (PDT) Received: by mail-pf1-x444.google.com with SMTP id l2so11844871pff.0; Mon, 03 Aug 2020 07:33:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=CSryihUrOfV/QpASOmMQXnPhqAteV/tdNxvfNf+2Xfg=; b=f6NQsPx1SkjRWIIzrAvw+PGh7OTrPeRIjU09/5f1HbEsEBW3tw9g0Ar8D+a8idmOb4 5FTeGXd2+X2YtudoVzwpciidf2SUXhlbjHbPx6B/XR3tcXvBBWcbiSoeoa46lHW2N8Hg p6Kc+bkMd02lDhTNFpL3vxsLMIZkPTai+FCiRW/lVS/lTNEydmuQ7uwyaJ5JHrJVtbCb LxxcQ47FRB/UgRGX11GVDSIcxnXRu0gtVOXSvaLrGUI5utT828y27TVT8gtINMCh4pOK P4doXOcAx6+88uFgzha2bpxsf14ck6e/d+qZ3BVSEbEzFT0D6G9xliA+Xl72rGid/RGL REFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=CSryihUrOfV/QpASOmMQXnPhqAteV/tdNxvfNf+2Xfg=; b=Uqs/jLCLK9BRJBlfudPaztkIv7+nbKlBP21gmCxanlmO0souvzW/cByXf1B7FqKb/9 4m4wvedEzTOuOxSidS4i0eZpw60nFkrd6VIy86uYpRaH9YWHWXeLA01AWMXsF6HkkqvV /m6grhkZ1fOlSoLnfATeJKqXAvPaNtepCeWNipCiCgLT+s/fBlkevzwWyimUGD+k+Ll/ +gNmHM2a8cG98zmj4KEtWMV9oiSuwOmZhYFfkwdKGx0KenQ3Hen8TCKiEBBdPboritk7 oMufWZL51chu+vTbOrhtqdIli7udtCoNqA8eijM48WdnaGoUs/5Pal8pxL2boBod0Zac vfsA== X-Gm-Message-State: AOAM533AQDkGBROuSsSLtgDf7KljDsI4GepTqQxABT1zrFD/ykA1tP6M vJSs15S4Gz3hvJY0/e7maQg= X-Received: by 2002:a62:19c4:: with SMTP id 187mr15865681pfz.312.1596465205971; Mon, 03 Aug 2020 07:33:25 -0700 (PDT) Received: from yangdongdo-OptiPlex-9010.mioffice.cn ([209.9.72.214]) by smtp.gmail.com with ESMTPSA id x20sm15849188pgc.49.2020.08.03.07.33.20 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 03 Aug 2020 07:33:25 -0700 (PDT) From: Dongdong Yang To: gregkh@linuxfoundation.org, rjw@rjwysocki.net, viresh.kumar@linaro.org, mingo@redhat.com, peterz@infradead.org, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de Cc: linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, linux-pm@vger.kernel.org, yangdongdong@xiaomi.com, tanggeliang@xiaomi.com, taojun@xiaomi.com, huangqiwu@xiaomi.com, rocking@linux.alibaba.com, fengwei@xiaomi.com, zhangguoquan@xiaomi.com, gulinghua@xiaomi.com, duhui@xiaomi.com Subject: [PATCH v3] Provide USF for the portable equipment. Date: Mon, 3 Aug 2020 22:31:14 +0800 Message-Id: X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Dongdong Yang This patch provides USF(User Sensitive Feedback factor) auxiliary cpufreq governor to support high level layer sysfs inodes setting for utils adjustment purpose from the identified scenario on portable equipment. Because the power consumption and UI response are more cared for by portable equipment users. And the "screen off" status stands for no request from the user, however, the kernel is still expected to notify the user in time on modem, network or powerkey events occur. USF provides "sched_usf_non_ux_r" sysfs inode to cut down the utils from user space tasks according to high level scenario. In addition, it usually hints more cpufreq demand that the preemptive counts of the tasks on the cpu burst and over the user expecting completed time such as the ratio sysctl_sched_latency to sysctl_sched_min_granularity on "screen on" status, which more likely with more UI. The sysfs inodes "sched_usf_up_l0_r" and "sched_usf_down_r" have been provided to adjust the utils according to high level identified scenario to alloc the cpufreq in time. Changes in v3 - Move usf.c to kernel/sched. - Remove trace_printk and debugfs. - Add document draft. - Update comments. Changes in v2 - Add adjust_task_pred_set switch. - Move adjust_task_pred_demand declaration into sched.h - Update comments. Dongdong Yang (1): sched: Provide USF for the portable equipment. Documentation/scheduler/sched-ufs.txt | 78 +++++++++ drivers/cpufreq/Kconfig | 11 ++ drivers/staging/Kconfig | 2 + drivers/staging/Makefile | 1 + include/trace/events/sched.h | 35 ++++ kernel/sched/Makefile | 1 + kernel/sched/cpufreq_schedutil.c | 3 + kernel/sched/sched.h | 10 ++ kernel/sched/usf.c | 305 ++++++++++++++++++++++++++++++++++ 9 files changed, 446 insertions(+) create mode 100644 Documentation/scheduler/sched-ufs.txt create mode 100644 kernel/sched/usf.c -- 2.7.4