lkml.org 
[lkml]   [2019]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH v2 12/14] x86/watchdog/hardlockup/hpet: Determine if HPET timer caused NMI
On Tue, Mar 26, 2019 at 09:55:35PM +0100, Thomas Gleixner wrote:
> On Wed, 27 Feb 2019, Ricardo Neri wrote:
> > @@ -62,7 +67,18 @@ static inline void set_comparator(struct hpet_hld_data *hdata,
> > static void kick_timer(struct hpet_hld_data *hdata, bool force)
> > {
> > bool kick_needed = force || !(hdata->flags & HPET_DEV_PERI_CAP);
> > - unsigned long new_compare, count;
> > + unsigned long tsc_curr, tsc_delta, new_compare, count;
> > +
> > + /* Start obtaining the current TSC and HPET counts. */
> > + tsc_curr = rdtsc();
> > +
> > + if (kick_needed)
> > + count = get_count();
>
> Can you please keep the TSC code in one block and the HPET block in the
> next one? Having this inbetween is really bad to follow.
>
> It really does not matter whether you read the HPET counter before or after
> the calculation. This is a crystal ball estimation anyway so a few cyles
> more or less are completely irrelevant.

Sure! I will implement this change.

Thanks and BR,
Ricardo

>
> > + tsc_delta = (unsigned long)watchdog_thresh * (unsigned long)tsc_khz
> > + * 1000L;
> > + hdata->tsc_next = tsc_curr + tsc_delta;
> > + hdata->tsc_next_error = tsc_delta >> 6;
>
> Thanks,
>
> tglx

\
 
 \ /
  Last update: 2019-04-09 04:04    [W:0.105 / U:3.528 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site