mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kevin Winchester <kjwinchester@gmail.com>
To: mingo@redhat.com, hpa@zytor.com, linux-kernel@vger.kernel.org,
	dmitry.torokhov@gmail.com, dtor@mail.ru, tglx@linutronix.de,
	mingo@elte.hu
Cc: linux-tip-commits@vger.kernel.org
Subject: Re: [tip:x86/urgent] x86, mce: therm_throt - change when we print  messages
Date: Tue, 11 Aug 2009 09:31:14 -0300	[thread overview]
Message-ID: <d1af83620908110531x5c7fb448r2a082a63ae22b95c@mail.gmail.com> (raw)
In-Reply-To: <tip-0d01f31439c1e4d602bf9fdc924ab66f407f5e38@git.kernel.org>

2009/8/11 tip-bot for Dmitry Torokhov <dmitry.torokhov@gmail.com>:
> Commit-ID:  0d01f31439c1e4d602bf9fdc924ab66f407f5e38
> Gitweb:     http://git.kernel.org/tip/0d01f31439c1e4d602bf9fdc924ab66f407f5e38
> Author:     Dmitry Torokhov <dmitry.torokhov@gmail.com>
> AuthorDate: Sun, 9 Aug 2009 21:44:49 -0700
> Committer:  Ingo Molnar <mingo@elte.hu>
> CommitDate: Tue, 11 Aug 2009 09:54:17 +0200
>
> x86, mce: therm_throt - change when we print messages
>
> My Latitude d630 seems to be handling thermal events in SMI by
> lowering the max frequency of the CPU till it cools down but
> still leaks the "everything is normal" events.
>
> This spams the console and with high priority printks.
>
> Adjust therm_throt driver to only print messages about the fact
> that temperatire returned back to normal when leaving the
> throttling state.
>
> Also lower the severity of "back to normal" message from
> KERN_CRIT to KERN_INFO.
>
> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
> Acked-by: H. Peter Anvin <hpa@zytor.com>
> LKML-Reference: <20090810051513.0558F526EC9@mailhub.coreip.homeip.net>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
>
>
> ---
>  arch/x86/kernel/cpu/mcheck/therm_throt.c |   18 +++++++++++-------
>  1 files changed, 11 insertions(+), 7 deletions(-)
>
> diff --git a/arch/x86/kernel/cpu/mcheck/therm_throt.c b/arch/x86/kernel/cpu/mcheck/therm_throt.c
> index bff8dd1..8bc64cf 100644
> --- a/arch/x86/kernel/cpu/mcheck/therm_throt.c
> +++ b/arch/x86/kernel/cpu/mcheck/therm_throt.c
> @@ -36,6 +36,7 @@
>
>  static DEFINE_PER_CPU(__u64, next_check) = INITIAL_JIFFIES;
>  static DEFINE_PER_CPU(unsigned long, thermal_throttle_count);
> +static DEFINE_PER_CPU(bool, thermal_throttle_active);
>
>  static atomic_t therm_throt_en         = ATOMIC_INIT(0);
>
> @@ -96,24 +97,27 @@ static int therm_throt_process(int curr)
>  {
>        unsigned int cpu = smp_processor_id();
>        __u64 tmp_jiffs = get_jiffies_64();
> +       bool was_throttled = __get_cpu_var(thermal_throttle_active);
> +       bool is_throttled = __get_cpu_var(thermal_throttle_active) = curr;

This seems a little odd (or perhaps my lack of experience is
showing...) - should it be:

bool is_throttled = __get_cpu_var(thermal_throttle_active) == curr;

?

>
> -       if (curr)
> +       if (is_throttled)
>                __get_cpu_var(thermal_throttle_count)++;
>
> -       if (time_before64(tmp_jiffs, __get_cpu_var(next_check)))
> +       if (!(was_throttled ^ is_throttled) &&
> +           time_before64(tmp_jiffs, __get_cpu_var(next_check)))
>                return 0;
>
>        __get_cpu_var(next_check) = tmp_jiffs + CHECK_INTERVAL;
>
>        /* if we just entered the thermal event */
> -       if (curr) {
> +       if (is_throttled) {
>                printk(KERN_CRIT "CPU%d: Temperature above threshold, "
> -                      "cpu clock throttled (total events = %lu)\n", cpu,
> -                      __get_cpu_var(thermal_throttle_count));
> +                      "cpu clock throttled (total events = %lu)\n",
> +                      cpu, __get_cpu_var(thermal_throttle_count));
>
>                add_taint(TAINT_MACHINE_CHECK);
> -       } else {
> -               printk(KERN_CRIT "CPU%d: Temperature/speed normal\n", cpu);
> +       } else if (was_throttled) {
> +               printk(KERN_INFO "CPU%d: Temperature/speed normal\n", cpu);
>        }
>
>        return 1;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>
>
>

  reply	other threads:[~2009-08-11 12:31 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-10  4:44 [PATCH] " Dmitry Torokhov
2009-08-10  5:26 ` Hidetoshi Seto
2009-08-11  7:57 ` [tip:x86/urgent] " tip-bot for Dmitry Torokhov
2009-08-11 12:31   ` Kevin Winchester [this message]
2009-08-12  2:15     ` Dmitry Torokhov
2009-08-12 12:34       ` Kevin Winchester

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=d1af83620908110531x5c7fb448r2a082a63ae22b95c@mail.gmail.com \
    --to=kjwinchester@gmail.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dtor@mail.ru \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®