[rtems commit] score: Critical fix for timer server

Sebastian Huber sebh at rtems.org
Thu Dec 6 08:58:12 UTC 2012


Module:    rtems
Branch:    4.10
Commit:    073e3e106b0132857f9e0020e536ad41613713b9
Changeset: http://git.rtems.org/rtems/commit/?id=073e3e106b0132857f9e0020e536ad41613713b9

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 569a936..8d6e465 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