From 912488de679cfbaa8275a910a61571b9a117c6bc Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 4 Dec 2008 15:58:08 +0000 Subject: [PATCH] 2008-12-04 Joel Sherrill PR 1348/cpukit * rtems/src/ratemonperiod.c: Properly handle period statistics after cpu usage information is reset while a period is running. --- cpukit/ChangeLog | 6 ++++++ cpukit/rtems/src/ratemonperiod.c | 4 ++++ 2 files changed, 10 insertions(+) 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 + + 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 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);