Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1337845

Re: [PATCH v2 8/12] cpufreq: governor: Make governor private data per-policy

From Viresh Kumar <viresh.kumar@linaro.org>
Newsgroups linux.kernel
Subject Re: [PATCH v2 8/12] cpufreq: governor: Make governor private data per-policy
Date 2016-02-19 03:40 +0100
Message-ID <r3J97-6Cc-7@gated-at.bofh.it> (permalink)
References <r3lJv-6xI-3@gated-at.bofh.it> <r3lTc-6Da-17@gated-at.bofh.it> <r3pWO-1j3-11@gated-at.bofh.it> <r3B1V-Ga-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> Subject: [PATCH] cpufreq: governor: Make governor private data per-policy
> 
> Some fields in struct od_cpu_dbs_info_s and struct cs_cpu_dbs_info_s
> are only used for a limited set of CPUs.  Namely, if a policy is
> shared between multiple CPUs, those fields will only be used for one
> of them (policy->cpu).  This means that they really are per-policy
> rather than per-CPU and holding room for them in per-CPU data
> structures is generally wasteful.  Also moving those fields into
> per-policy data structures will allow some significant simplifications
> to be made going forward.
> 
> For this reason, introduce struct cs_policy_dbs_info and
> struct od_policy_dbs_info to hold those fields.  Define each of the
> new structures as an extension of struct policy_dbs_info (such that
> struct policy_dbs_info is embedded in each of them) and introduce
> new ->alloc and ->free governor callbacks to allocate and free
> those structures, respectively, such that ->alloc() will return
> a pointer to the struct policy_dbs_info embedded in the allocated
> data structure and ->free() will take that pointer as its argument.
> 
> With that, modify the code accessing the data fields in question
> in per-CPU data objects to look for them in the new structures
> via the struct policy_dbs_info pointer available to it and drop
> them from struct od_cpu_dbs_info_s and struct cs_cpu_dbs_info_s.
> 
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> 
> This adds a header file for the definitions of data structures shared
> between ondemand and amd_freq_sensitivity.
> 
> The latter is updated to look for the governor tunables in struct od_policy_dbs_info
> instead of struct od_cpu_dbs_info_s.
> 
> ---
>  drivers/cpufreq/amd_freq_sensitivity.c |    5 +---
>  drivers/cpufreq/cpufreq_conservative.c |   34 +++++++++++++++++++++++++++++----
>  drivers/cpufreq/cpufreq_governor.c     |    7 ++----
>  drivers/cpufreq/cpufreq_governor.h     |    9 +-------
>  drivers/cpufreq/cpufreq_ondemand.c     |   34 +++++++++++++++++++++++----------
>  drivers/cpufreq/cpufreq_ondemand.h     |   26 +++++++++++++++++++++++++
>  6 files changed, 87 insertions(+), 28 deletions(-)

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

-- 
viresh

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/12] cpufreq: More governor code reorganization "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:40 +0100
  [PATCH 11/12] cpufreq: governor: Make dbs_data_mutex static "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 11/12] cpufreq: governor: Make dbs_data_mutex static Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 07:10 +0100
  [PATCH 4/12] cpufreq: governor: Drop unused governor callback and data fields "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 4/12] cpufreq: governor: Drop unused governor callback  and data fields Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 06:40 +0100
  [PATCH 5/12] cpufreq: ondemand: Drop one more callback from struct od_ops "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 5/12] cpufreq: ondemand: Drop one more callback from  struct od_ops Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 06:40 +0100
  [PATCH 8/12] cpufreq: governor: Make governor private data per-policy "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 8/12] cpufreq: governor: Make governor private data  per-policy Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 07:10 +0100
      [PATCH v2 8/12] cpufreq: governor: Make governor private data per-policy "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 19:00 +0100
        Re: [PATCH v2 8/12] cpufreq: governor: Make governor private data  per-policy Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-19 03:40 +0100
  [PATCH 6/12] cpufreq: governor: Fix CPU load information updates via ->store "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 6/12] cpufreq: governor: Fix CPU load information updates  via ->store Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 06:50 +0100
      Re: [PATCH 6/12] cpufreq: governor: Fix CPU load information updates  via ->store "Rafael J. Wysocki" <rafael@kernel.org> - 2016-02-18 18:40 +0100
  [PATCH 7/12] cpufreq: ondemand: Rework the handling of powersave bias updates "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 7/12] cpufreq: ondemand: Rework the handling of powersave  bias updates Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 07:00 +0100
  [PATCH 12/12] cpufreq: governor: Narrow down the dbs_data_mutex coverage "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 02:50 +0100
    Re: [PATCH 12/12] cpufreq: governor: Narrow down the dbs_data_mutex  coverage Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-18 07:30 +0100
      Re: [PATCH 12/12] cpufreq: governor: Narrow down the dbs_data_mutex coverage "Rafael J. Wysocki" <rafael@kernel.org> - 2016-02-18 17:40 +0100
      [PATCH v2 12/12] cpufreq: governor: Narrow down the dbs_data_mutex coverage "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-02-18 19:00 +0100
        Re: [PATCH v2 12/12] cpufreq: governor: Narrow down the  dbs_data_mutex coverage Viresh Kumar <viresh.kumar@linaro.org> - 2016-02-19 03:40 +0100

csiph-web