diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-07-19 11:18:51 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-07-22 16:57:22 +0200 |
commit | a9515722907b6d3ed6a42653d2fc9a4d02d13905 (patch) | |
tree | 5eaab40938303aeb5b8f03f0952405eed087f5e2 | |
parent | libcsupport: Include missing header file (diff) | |
download | rtems-a9515722907b6d3ed6a42653d2fc9a4d02d13905.tar.bz2 |
cpuuse: Add SMP support
-rw-r--r-- | cpukit/libmisc/cpuuse/cpuusagereset.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cpukit/libmisc/cpuuse/cpuusagereset.c b/cpukit/libmisc/cpuuse/cpuusagereset.c index 92497d75cd..749eae2628 100644 --- a/cpukit/libmisc/cpuuse/cpuusagereset.c +++ b/cpukit/libmisc/cpuuse/cpuusagereset.c @@ -41,8 +41,17 @@ static void CPU_usage_Per_thread_handler( void rtems_cpu_usage_reset( void ) { #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__ + uint32_t processor_count; + uint32_t processor; + _TOD_Get_uptime( &CPU_usage_Uptime_at_last_reset ); - _Thread_Time_of_last_context_switch = CPU_usage_Uptime_at_last_reset; + + processor_count = rtems_smp_get_processor_count(); + for ( processor = 0 ; processor < processor_count ; ++processor ) { + Per_CPU_Control *per_cpu = &_Per_CPU_Information[ processor ]; + + per_cpu->time_of_last_context_switch = CPU_usage_Uptime_at_last_reset; + } #else CPU_usage_Ticks_at_last_reset = _Watchdog_Ticks_since_boot; #endif |