[rtems commit] score: Critical fix for timer server

Sebastian Huber sebh at rtems.org
Wed Dec 5 17:09:37 UTC 2012


Module:    rtems
Branch:    master
Commit:    038bc6e775462e762adbfbba9979ad1604a59e1c
Changeset: http://git.rtems.org/rtems/commit/?id=038bc6e775462e762adbfbba9979ad1604a59e1c

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Wed Dec  5 17:56:19 2012 +0100

score: Critical fix for timer server

Under certain conditions it is possible that a call to
_Watchdog_Adjust_to_chain() happens with a unit parameter value of zero
(for example sptests/spintrcritical17).  Remove superfluous checks that
prevent an adjust to a chain of a watchdog chain which first element has
a delta zero value.

---

 cpukit/score/src/watchdogadjusttochain.c |    7 -------
 1 files changed, 0 insertions(+), 7 deletions(-)

diff --git a/cpukit/score/src/watchdogadjusttochain.c b/cpukit/score/src/watchdogadjusttochain.c
index 3b8684a..902d9de 100644
--- a/cpukit/score/src/watchdogadjusttochain.c
+++ b/cpukit/score/src/watchdogadjusttochain.c
@@ -33,16 +33,9 @@ void _Watchdog_Adjust_to_chain(
   ISR_Level          level;
   Watchdog_Control  *first;
 
-  if ( units <= 0 ) {
-    return;
-  }
-
   _ISR_Disable( level );
 
   while ( 1 ) {
-    if ( units <= 0 ) {
-      break;
-    }
     if ( _Chain_Is_empty( header ) ) {
       break;
     }




More information about the vc mailing list