Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1671748
| From | Thomas Gleixner <tglx@linutronix.de> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups |
| Date | 2017-06-21 17:20 +0200 |
| Message-ID | <tUPAd-7N4-5@gated-at.bofh.it> (permalink) |
| References | <tUP7c-7m1-15@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Wed, 21 Jun 2017, kan.liang@intel.com wrote:
>
> #ifdef CONFIG_HARDLOCKUP_DETECTOR
> +/*
> + * The NMI watchdog relies on PERF_COUNT_HW_CPU_CYCLES event, which
> + * can tick faster than the measured CPU Frequency due to Turbo mode.
> + * That can lead to spurious timeouts.
> + * To workaround the issue, extending the period by 3 times.
> + */
> u64 hw_nmi_get_sample_period(int watchdog_thresh)
> {
> - return (u64)(cpu_khz) * 1000 * watchdog_thresh;
> + return (u64)(cpu_khz) * 1000 * watchdog_thresh * 3;
The maximum turbo frequency of any given machine can be retrieved.
So why don't you simply take that ratio into account and apply it for the
machines which have those insane turbo loaders? That's not a huge effort,
can be easily backported and does not inflict this unconditially.
So what you want is:
return get_max_turbo_khz() * 1000 * watchdog_thresh;
Where get_max_turbo_khz() by default returns cpu_khz for non turbo
motors.
And instead of silently doing this it should emit a info into dmesg:
u64 period, max_khz = get_max_turbo_khz();
static int once;
period = max_khz * 1000 * watchdog_thresh;
if (max_khz != cpu_khz && !once) {
unsigned int msec = period / cpu_khz;
once = 1;
pr_info("Adjusted watchdog threshold to %u.%04u sec\n",
msec / 1000, msec % 1000);
}
return period;
Hmm?
Thanks,
tglx
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH V2] kernel/watchdog: fix spurious hard lockups kan.liang@intel.com - 2017-06-21 16:50 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-21 17:20 +0200
RE: [PATCH V2] kernel/watchdog: fix spurious hard lockups "Liang, Kan" <kan.liang@intel.com> - 2017-06-21 19:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Prarit Bhargava <prarit@redhat.com> - 2017-06-21 19:50 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Andi Kleen <ak@linux.intel.com> - 2017-06-21 19:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-21 22:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-22 00:00 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-22 17:40 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-22 17:50 +0200
RE: [PATCH V2] kernel/watchdog: fix spurious hard lockups "Liang, Kan" <kan.liang@intel.com> - 2017-06-22 18:00 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-23 10:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-23 18:30 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-24 00:00 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-26 22:30 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Thomas Gleixner <tglx@linutronix.de> - 2017-06-26 22:40 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-27 22:20 +0200
RE: [PATCH V2] kernel/watchdog: fix spurious hard lockups "Liang, Kan" <kan.liang@intel.com> - 2017-06-27 22:50 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-27 23:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Andi Kleen <ak@linux.intel.com> - 2017-06-28 01:50 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-28 21:10 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Andi Kleen <ak@linux.intel.com> - 2017-06-28 22:20 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-29 17:50 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Andi Kleen <ak@linux.intel.com> - 2017-06-29 18:20 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Don Zickus <dzickus@redhat.com> - 2017-06-29 18:30 +0200
Re: [PATCH V2] kernel/watchdog: fix spurious hard lockups Andi Kleen <ak@linux.intel.com> - 2017-06-29 18:40 +0200
csiph-web