summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-10-11 09:59:17 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-10-12 13:54:22 +0200
commit6f7a804227539c835a5ee9ec6d459634430c4f83 (patch)
tree010c42c232998c1103c9df06bebbe43b9a4ec78f
parentd7527017903564795ba76fd9023af28f94a6aaa0 (diff)
testsuites/validation/tc-cpuuse.c
-rw-r--r--testsuites/validation/tc-cpuuse.c26
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, &timestamp );
- T_gt_i64( timestamp, 0 );
+ TimecounterTick();
- _Thread_Get_CPU_time_used( other, &timestamp );
- 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, &timestamp );
- 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, &timestamp );
- 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.