summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-12-04 15:58:08 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-12-04 15:58:08 +0000
commit912488de679cfbaa8275a910a61571b9a117c6bc (patch)
treec9fe2bce16c6897234506fecc168fb4da7da4296 /cpukit
parent2008-12-04 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-912488de679cfbaa8275a910a61571b9a117c6bc.tar.bz2
2008-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1348/cpukit * rtems/src/ratemonperiod.c: Properly handle period statistics after cpu usage information is reset while a period is running.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/ChangeLog6
-rw-r--r--cpukit/rtems/src/ratemonperiod.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index 360e19046c..609cebb879 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,9 @@
+2008-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ PR 1348/cpukit
+ * rtems/src/ratemonperiod.c: Properly handle period statistics after
+ cpu usage information is reset while a period is running.
+
2008-12-03 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1347/cpukit
diff --git a/cpukit/rtems/src/ratemonperiod.c b/cpukit/rtems/src/ratemonperiod.c
index 23f70c58a0..26db51f43b 100644
--- a/cpukit/rtems/src/ratemonperiod.c
+++ b/cpukit/rtems/src/ratemonperiod.c
@@ -74,6 +74,10 @@ void _Rate_monotonic_Update_statistics(
/* Grab CPU usage when the thread got switched in */
used = _Thread_Executing->cpu_time_used;
+ /* partial period, cpu usage info reset while executing. Throw away */
+ if (_Timespec_Less_than( &used, &the_period->owner_executed_at_period))
+ return;
+
/* How much time time since last context switch */
_Timespec_Subtract(&_Thread_Time_of_last_context_switch, &uptime, &ran);