All of lore.kernel.org
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@stusta.de>
To: Thomas Renninger <trenn@suse.de>
Cc: Gabriel C <nix.or.die@googlemail.com>,
	davej@codemonkey.org.uk,
	Andrew Morton <akpm@linux-foundation.org>,
	Miles Lane <miles.lane@gmail.com>,
	LKML <linux-kernel@vger.kernel.org>,
	cpufreq@lists.linux.org.uk, "Pallipadi,
	Venkatesh" <venkatesh.pallipadi@intel.com>
Subject: Re: [-mm patch] CPUfreq: Only check for transition latency on problematic governors
Date: Thu, 2 Aug 2007 16:54:29 +0200	[thread overview]
Message-ID: <20070802145429.GW3972@stusta.de> (raw)
In-Reply-To: <1186065486.18821.545.camel@queen.suse.de>

On Thu, Aug 02, 2007 at 04:38:06PM +0200, Thomas Renninger wrote:
> On Thu, 2007-08-02 at 15:48 +0200, Adrian Bunk wrote:
> > On Thu, Aug 02, 2007 at 02:28:06AM +0200, Gabriel C wrote:
> > > Andrew Morton wrote:
> > > > On Wed, 1 Aug 2007 16:31:46 -0700
> > > > "Miles Lane" <miles.lane@gmail.com> wrote:
> > > > 
> > > >>   LD      .tmp_vmlinux1
> > > >> drivers/built-in.o: In function `__cpufreq_governor':
> > > >> cpufreq.c:(.text+0xaf178): undefined reference to `cpufreq_gov_performance'
> > > >> cpufreq.c:(.text+0xaf18a): undefined reference to `cpufreq_gov_performance'
> > > >> make: *** [.tmp_vmlinux1] Error 1
> > > > 
> > > > One for Thomas, I expect.
> > > 
> > > Is this patch :
> > > 
> > > cpufreq-allow-ondemand-and-conservative-cpufreq-governors-to-be-used-as-default.patch
> > > 
> > > Reverting it here fixes the error.
> > 
> > Possible fix below.
> Or this one.
> Advantage: You can still have cpufreq core without the performance 
>            governor built.
> Disadvantage: The logic whether transition latency checks are
>               needed/done is moved to Kconfig.
>               Means, if you write a governor that has transition
>               latency values above 0, you must let it depend on
>               the performance governor in Kconfig.
> 
> Hope I got all .config possibilities with that one now.
> Attached is also a replacement patch for this one:
> cpufreq-allow-ondemand-and-conservative-cpufreq-governors-to-be-used-as-default.patch
> 
> 
> CPUfreq: Only check for transition latency on problematic governors
> 
> Signed-off-by: Thomas Renninger <trenn@suse.de>
> --
> 
> --- linux-2.6.23-rc1-mm2/include/linux/cpufreq.h	2007-08-02 16:01:36.000000000 +0200
> +++ linux-2.6.23-rc1-mm2_fixed/include/linux/cpufreq.h	2007-08-02 15:21:28.000000000 +0200
> @@ -299,8 +299,10 @@ static inline unsigned int cpufreq_get(u
>    Performance governor is fallback governor if any other gov failed to
>    auto load due latency restrictions
>  */
> +#ifdef CONFIG_CPU_FREQ_GOV_PERFORMANCE
>  extern struct cpufreq_governor cpufreq_gov_performance;
>  #define CPUFREQ_PERFORMANCE_GOVERNOR	(&cpufreq_gov_performance)
> +#endif
>  #ifdef CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE
>  #define CPUFREQ_DEFAULT_GOVERNOR	(&cpufreq_gov_performance)
>  #elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE)
> --- linux-2.6.23-rc1-mm2/drivers/cpufreq/cpufreq.c	2007-08-02 16:01:35.000000000 +0200
> +++ linux-2.6.23-rc1-mm2_fixed/drivers/cpufreq/cpufreq.c	2007-08-02 16:23:09.000000000 +0200
> @@ -1484,17 +1484,30 @@ static int __cpufreq_governor(struct cpu
>  					unsigned int event)
>  {
>  	int ret;
> +
> +	/* Only must be defined when default governor is known to have latency
> +	   restrictions, like e.g. conservative or ondemand.
> +	   That this is the case is already ensured in Kconfig
> +	*/
> +#ifdef CONFIG_CPU_FREQ_GOV_PERFORMANCE
>  	struct cpufreq_governor *gov = CPUFREQ_PERFORMANCE_GOVERNOR;
> +#else
> +	struct cpufreq_governor *gov = NULL;
> +#endif
>...

Looks good, but you could remove CPUFREQ_PERFORMANCE_GOVERNOR and 
directly use cpufreq_gov_performance.
  
cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

  reply	other threads:[~2007-08-02 14:54 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-01 23:31 cpufreq.c:(.text+0xaf178): undefined reference to `cpufreq_gov_performance' Miles Lane
2007-08-01 23:57 ` Andrew Morton
2007-08-02  0:28   ` Gabriel C
2007-08-02 13:48     ` [-mm patch] CPU_FREQ_GOV_PERFORMANCE must always be y Adrian Bunk
2007-08-02 14:38       ` [-mm patch] CPUfreq: Only check for transition latency on problematic governors Thomas Renninger
2007-08-02 14:54         ` Adrian Bunk [this message]
2007-08-02 15:24           ` Thomas Renninger
2007-08-02 11:15   ` cpufreq.c:(.text+0xaf178): undefined reference to `cpufreq_gov_performance' Thomas Renninger
2007-08-02 12:04     ` Gabriel C

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070802145429.GW3972@stusta.de \
    --to=bunk@stusta.de \
    --cc=akpm@linux-foundation.org \
    --cc=cpufreq@lists.linux.org.uk \
    --cc=davej@codemonkey.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miles.lane@gmail.com \
    --cc=nix.or.die@googlemail.com \
    --cc=trenn@suse.de \
    --cc=venkatesh.pallipadi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.