[vdr] PANIC: watchdog timer expired - exiting
Klaus Schmidinger
Klaus.Schmidinger at cadsoft.de
Sun Dec 2 13:08:11 CET 2007
On 06/09/07 21:40, Petri Hintukainen wrote:
> On Sat, 2007-06-09 at 12:28 +0200, Udo Richter wrote:
>> And, from the original post:
>>> May 31 20:23:38 localhost vdr: [3413] System Time = Thu May 31 20:23:38 2007 (1180632218)
>>> May 31 20:23:38 localhost vdr: [3413] Local Time = Thu May 31 20:19:37 2007 (1180631977)
>>> May 31 20:21:01 localhost vdr: [3405] PANIC: watchdog timer expired - exiting!
>
> Turning clock is always very bad and dangerous thing to do. It can cause
> lot of other problems too, just to mention incomplete builds, duplicate
> cron jobs, destroyed logs and files, incomplete backups ...
>
>> The clock was set to 20:19:37, and the watchdog fires at 20:21:01 - 84
>> seconds later. There must be something different causing the watchdog to
>> expire.
>
> It might be even some plugin. All timeouts (cTimeMs, cCondVar,
> cCondWait) use current wall clock time to set the timeout.
> Example:
> cCondWait c;
> c.Wait(100);
>
> If clock is turned 2 minutes back in middle of this, the code will wait
> 120100 ms instead of 100ms ... Might cause some quite weird problems.
> I belive there's no way to change pthread_..._timedwait functions, but
> cTimeMs can be changed to use monotonic timers instead of gettimeofday
> (patch attached).
> ...
I have (finally, sorry for the big delay) adopted this patch (in the
attached form) to fix a problem with SVDRP connections when the system
time is adjusted.
While testing this, I found that on my system the monotonic clock
only has a resolution of 4000250 ns (about 4 ms), which in your original
patch would have caused VDR not to use the monotonic clock.
Are there actually systems that have a 1 ms resolution?
Or is there some parameter that needs to be adjusted to get a better
resolution?
Maybe we should set the limit to, say, 10 ms, so that systems like
mine can also benefit from this. After all, the advantage of having
a monotonous clock outweighs the courser resolution (typically such
timeouts are not below 10 ms).
Klaus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-1.5.12-monotonicclock.diff
Type: text/x-patch
Size: 1969 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20071202/10e28f0f/attachment.bin
More information about the vdr
mailing list