summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpukit/libmisc/cpuuse/cpuusagereport.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/cpukit/libmisc/cpuuse/cpuusagereport.c b/cpukit/libmisc/cpuuse/cpuusagereport.c
index 14945d7071..fcf7d26be4 100644
--- a/cpukit/libmisc/cpuuse/cpuusagereport.c
+++ b/cpukit/libmisc/cpuuse/cpuusagereport.c
@@ -41,13 +41,10 @@
return true;
}
#else
- int cpu;
- for ( cpu=0 ; cpu < rtems_smp_get_processor_count() ; cpu++ ) {
- Per_CPU_Control *p = &_Per_CPU_Information[cpu];
- if ( p->executing->Object.id == the_thread->Object.id ) {
- *time_of_context_switch = p->time_of_last_context_switch;
- return true;
- }
+ /* FIXME: Locking */
+ if ( the_thread->is_executing ) {
+ *time_of_context_switch = the_thread->cpu->time_of_last_context_switch;
+ return true;
}
#endif
return false;