diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-10-11 09:59:17 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-10-12 13:54:22 +0200 |
commit | 6f7a804227539c835a5ee9ec6d459634430c4f83 (patch) | |
tree | 010c42c232998c1103c9df06bebbe43b9a4ec78f | |
parent | d7527017903564795ba76fd9023af28f94a6aaa0 (diff) |
testsuites/validation/tc-cpuuse.c
-rw-r--r-- | testsuites/validation/tc-cpuuse.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/testsuites/validation/tc-cpuuse.c b/testsuites/validation/tc-cpuuse.c index 99dc48aebf..60c567fa24 100644 --- a/testsuites/validation/tc-cpuuse.c +++ b/testsuites/validation/tc-cpuuse.c @@ -95,7 +95,8 @@ static void RtemsCpuuseValCpuuse_Action_0( void ) rtems_id id; Thread_Control *self; Thread_Control *other; - Timestamp_Control timestamp; + Timestamp_Control cpu_usage_self; + Timestamp_Control cpu_usage_other; id = CreateTask( "WORK", GetSelfPriority() ); StartTask( id, Worker, NULL ); @@ -110,20 +111,25 @@ static void RtemsCpuuseValCpuuse_Action_0( void ) * Check that we have a non-zero CPU usage. Reset the CPU usage. Check that * it was cleared to zero. */ - _Thread_Get_CPU_time_used( self, ×tamp ); - T_gt_i64( timestamp, 0 ); + TimecounterTick(); - _Thread_Get_CPU_time_used( other, ×tamp ); - T_gt_i64( timestamp, 0 ); + cpu_usage_self = _Thread_Get_CPU_time_used( self ); + cpu_usage_other = _Thread_Get_CPU_time_used( other ); + + T_gt_i64( _Thread_Get_CPU_time_used_after_last_reset( self ), 0 ); + T_gt_i64( _Thread_Get_CPU_time_used_after_last_reset( other ), 0 ); rtems_cpu_usage_reset(); - /* Our CPU usage is now exactly one tick of the software timecounter */ - _Thread_Get_CPU_time_used( self, ×tamp ); - T_eq_i64( timestamp, 4295 ); + /* + * Our CPU usage after the last reset is now exactly one tick of the + * software timecounter. + */ + T_eq_i64( _Thread_Get_CPU_time_used_after_last_reset( self ), 4295 ); + T_eq_i64( _Thread_Get_CPU_time_used( self ), cpu_usage_self + 30065 ); - _Thread_Get_CPU_time_used( other, ×tamp ); - T_eq_i64( timestamp, 0 ); + T_eq_i64( _Thread_Get_CPU_time_used_after_last_reset( other ), 0 ); + T_eq_i64( _Thread_Get_CPU_time_used( other ), cpu_usage_other ); /* * Clean up all used resources. |