diff options
Diffstat (limited to 'cpukit/score/src/watchdogtick.c')
-rw-r--r-- | cpukit/score/src/watchdogtick.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/cpukit/score/src/watchdogtick.c b/cpukit/score/src/watchdogtick.c index e9160f2ea1..2f11357019 100644 --- a/cpukit/score/src/watchdogtick.c +++ b/cpukit/score/src/watchdogtick.c @@ -70,7 +70,7 @@ void _Watchdog_Tick( Per_CPU_Control *cpu ) ++ticks; cpu->Watchdog.ticks = ticks; - header = &cpu->Watchdog.Header[ PER_CPU_WATCHDOG_MONOTONIC ]; + header = &cpu->Watchdog.Header[ PER_CPU_WATCHDOG_TICKS ]; first = _Watchdog_Header_first( header ); if ( first != NULL ) { @@ -83,6 +83,20 @@ void _Watchdog_Tick( Per_CPU_Control *cpu ) ); } + header = &cpu->Watchdog.Header[ PER_CPU_WATCHDOG_MONOTONIC ]; + first = _Watchdog_Header_first( header ); + + if ( first != NULL ) { + _Timecounter_Getnanouptime( &now ); + _Watchdog_Tickle( + header, + first, + _Watchdog_Ticks_from_timespec( &now ), + &cpu->Watchdog.Lock, + &lock_context + ); + } + header = &cpu->Watchdog.Header[ PER_CPU_WATCHDOG_REALTIME ]; first = _Watchdog_Header_first( header ); |