Messages in this thread | | | Subject | Re: [PATCH] Improve clocksource unstable warning | From | john stultz <> | Date | Fri, 12 Nov 2010 15:52:39 -0800 |
| |
On Fri, 2010-11-12 at 18:48 -0500, Andrew Lutomirski wrote: > On Fri, Nov 12, 2010 at 6:40 PM, john stultz <johnstul@us.ibm.com> wrote: > > On Fri, 2010-11-12 at 16:52 -0500, Andrew Lutomirski wrote: > > > >> if ( wd_elapsed < cs_elapsed and ( (cs_elapsed - wd_elapsed) % > >> wd_wrapping_time ) < (something fairly small) ) > >> bail; // The watchdog most likely wrapped. > > > > Huh. The modulo bit may need tweaking as its not immediately clear its > > right. Maybe the following is clearer?: > > > > if ((cs_elapsed > wd_wrapping_time) > > && (abs((cs_elapsed % wd_wrapping_time)-wd_elapsed) < MAX_DELTA) > > // should be ok. > > I think this is wrong if wd_elapsed is large (which could happen if > the real wd time is something like (2 * wd_wrapping_time - > MAX_DELTA/4)).
But wd_elapsed can never be larger then wd_wrapping_time, right?
Or am I still missing something?
thanks -john
| |