From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757280AbdERSab (ORCPT ); Thu, 18 May 2017 14:30:31 -0400 Received: from mail-pf0-f176.google.com ([209.85.192.176]:36540 "EHLO mail-pf0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755221AbdERSa2 (ORCPT ); Thu, 18 May 2017 14:30:28 -0400 From: Joel Fernandes To: linux-kernel@vger.kernel.org Cc: rafael@kernel.org, Joel Fernandes Subject: [PATCH 1/2] cpufreq: Make iowait boost a policy option Date: Thu, 18 May 2017 11:30:19 -0700 Message-Id: <20170518183020.6188-1-joelaf@google.com> X-Mailer: git-send-email 2.13.0.303.g4ebf302169-goog Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Make iowait boost a cpufreq policy option and enable it for intel_pstate cpufreq driver. Governors like schedutil can use it to determine if boosting for tasks that wake up with p->in_iowait set is needed. Signed-off-by: Joel Fernandes --- drivers/cpufreq/intel_pstate.c | 1 + include/linux/cpufreq.h | 3 +++ 2 files changed, 4 insertions(+) diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c index b7de5bd76a31..a3099f099779 100644 --- a/drivers/cpufreq/intel_pstate.c +++ b/drivers/cpufreq/intel_pstate.c @@ -2239,6 +2239,7 @@ static int intel_cpufreq_cpu_init(struct cpufreq_policy *policy) policy->cpuinfo.transition_latency = INTEL_CPUFREQ_TRANSITION_LATENCY; policy->transition_delay_us = INTEL_CPUFREQ_TRANSITION_DELAY; + policy->iowait_boost_enable = 1; /* This reflects the intel_pstate_get_cpu_pstates() setting. */ policy->cur = policy->cpuinfo.min_freq; diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index a5ce0bbeadb5..4bb086dbe7ec 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h @@ -127,6 +127,9 @@ struct cpufreq_policy { */ unsigned int transition_delay_us; + /* Boost switch for tasks with p->in_iowait set */ + unsigned int iowait_boost_enable; + /* Cached frequency lookup from cpufreq_driver_resolve_freq. */ unsigned int cached_target_freq; int cached_resolved_idx; -- 2.13.0.303.g4ebf302169-goog