mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-22 22:47:15 +08:00
Remove use ticks for statistics configure option.
This was obsolete and broken based upon recent time keeping changes. Thie build option was previously enabled by adding USE_TICKS_FOR_STATISTICS=1 to the configure command line. This propagated into the code as preprocessor conditionals using the __RTEMS_USE_TICKS_FOR_STATISTICS__ conditional.
This commit is contained in:
@@ -22,8 +22,4 @@
|
||||
|
||||
#include <rtems/cpuuse.h>
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
Timestamp_Control CPU_usage_Uptime_at_last_reset;
|
||||
#else
|
||||
uint32_t CPU_usage_Ticks_at_last_reset;
|
||||
#endif
|
||||
Timestamp_Control CPU_usage_Uptime_at_last_reset;
|
||||
|
||||
@@ -44,12 +44,8 @@ void rtems_cpu_usage_report_with_plugin(
|
||||
Objects_Information *information;
|
||||
char name[13];
|
||||
uint32_t ival, fval;
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
Timestamp_Control uptime, total, ran, uptime_at_last_reset;
|
||||
uint32_t seconds, nanoseconds;
|
||||
#else
|
||||
uint32_t total_units = 0;
|
||||
#endif
|
||||
Timestamp_Control uptime, total, ran, uptime_at_last_reset;
|
||||
uint32_t seconds, nanoseconds;
|
||||
|
||||
if ( !print )
|
||||
return;
|
||||
@@ -59,38 +55,15 @@ void rtems_cpu_usage_report_with_plugin(
|
||||
* the number of "ticks" we gave credit for to give the user a rough
|
||||
* guideline as to what each number means proportionally.
|
||||
*/
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
_Timestamp_Set_to_zero( &total );
|
||||
uptime_at_last_reset = CPU_usage_Uptime_at_last_reset;
|
||||
#else
|
||||
for ( api_index = 1 ; api_index <= OBJECTS_APIS_LAST ; api_index++ ) {
|
||||
#if !defined(RTEMS_POSIX_API) || defined(RTEMS_DEBUG)
|
||||
if ( !_Objects_Information_table[ api_index ] )
|
||||
continue;
|
||||
#endif
|
||||
|
||||
information = _Objects_Information_table[ api_index ][ 1 ];
|
||||
if ( information ) {
|
||||
for ( i=1 ; i <= information->maximum ; i++ ) {
|
||||
the_thread = (Thread_Control *)information->local_table[ i ];
|
||||
|
||||
if ( the_thread )
|
||||
total_units += the_thread->cpu_time_used;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
_Timestamp_Set_to_zero( &total );
|
||||
uptime_at_last_reset = CPU_usage_Uptime_at_last_reset;
|
||||
|
||||
(*print)(
|
||||
context,
|
||||
"-------------------------------------------------------------------------------\n"
|
||||
" CPU USAGE BY THREAD\n"
|
||||
"------------+----------------------------------------+---------------+---------\n"
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
" ID | NAME | SECONDS | PERCENT\n"
|
||||
#else
|
||||
" ID | NAME | TICKS | PERCENT\n"
|
||||
#endif
|
||||
" ID | NAME | SECONDS | PERCENT\n"
|
||||
"------------+----------------------------------------+---------------+---------\n"
|
||||
);
|
||||
|
||||
@@ -117,7 +90,6 @@ void rtems_cpu_usage_report_with_plugin(
|
||||
name
|
||||
);
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
{
|
||||
Timestamp_Control last;
|
||||
|
||||
@@ -150,52 +122,20 @@ void rtems_cpu_usage_report_with_plugin(
|
||||
ival, fval
|
||||
);
|
||||
}
|
||||
#else
|
||||
if (total_units) {
|
||||
uint64_t ival_64;
|
||||
|
||||
ival_64 = the_thread->cpu_time_used;
|
||||
ival_64 *= 100000;
|
||||
ival = ival_64 / total_units;
|
||||
} else {
|
||||
ival = 0;
|
||||
}
|
||||
|
||||
fval = ival % 1000;
|
||||
ival /= 1000;
|
||||
(*print)( context,
|
||||
"%14" PRIu32 " |%4" PRIu32 ".%03" PRIu32 "\n",
|
||||
the_thread->cpu_time_used,
|
||||
ival,
|
||||
fval
|
||||
);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
seconds = _Timestamp_Get_seconds( &total );
|
||||
nanoseconds = _Timestamp_Get_nanoseconds( &total ) /
|
||||
TOD_NANOSECONDS_PER_MICROSECOND;
|
||||
(*print)(
|
||||
context,
|
||||
"------------+----------------------------------------+---------------+---------\n"
|
||||
" TIME SINCE LAST CPU USAGE RESET IN SECONDS: %7" PRIu32 ".%06" PRIu32 "\n"
|
||||
"-------------------------------------------------------------------------------\n",
|
||||
seconds, nanoseconds
|
||||
);
|
||||
#else
|
||||
(*print)(
|
||||
context,
|
||||
"------------+----------------------------------------+---------------+---------\n"
|
||||
" TICKS SINCE LAST SYSTEM RESET: %14" PRIu32 "\n"
|
||||
" TOTAL UNITS: %14" PRIu32 "\n"
|
||||
"-------------------------------------------------------------------------------\n",
|
||||
_Watchdog_Ticks_since_boot - CPU_usage_Ticks_at_last_reset,
|
||||
total_units
|
||||
);
|
||||
#endif
|
||||
seconds = _Timestamp_Get_seconds( &total );
|
||||
nanoseconds = _Timestamp_Get_nanoseconds( &total ) /
|
||||
TOD_NANOSECONDS_PER_MICROSECOND;
|
||||
(*print)(
|
||||
context,
|
||||
"------------+----------------------------------------+---------------+---------\n"
|
||||
" TIME SINCE LAST CPU USAGE RESET IN SECONDS: %7" PRIu32 ".%06" PRIu32 "\n"
|
||||
"-------------------------------------------------------------------------------\n",
|
||||
seconds, nanoseconds
|
||||
);
|
||||
}
|
||||
|
||||
void rtems_cpu_usage_report( void )
|
||||
|
||||
@@ -27,11 +27,7 @@ static void CPU_usage_Per_thread_handler(
|
||||
Thread_Control *the_thread
|
||||
)
|
||||
{
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
_Timestamp_Set_to_zero( &the_thread->cpu_time_used );
|
||||
#else
|
||||
the_thread->cpu_time_used = 0;
|
||||
#endif
|
||||
_Timestamp_Set_to_zero( &the_thread->cpu_time_used );
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -39,21 +35,17 @@ static void CPU_usage_Per_thread_handler(
|
||||
*/
|
||||
void rtems_cpu_usage_reset( void )
|
||||
{
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
uint32_t cpu_count;
|
||||
uint32_t cpu_index;
|
||||
uint32_t cpu_count;
|
||||
uint32_t cpu_index;
|
||||
|
||||
_TOD_Get_uptime( &CPU_usage_Uptime_at_last_reset );
|
||||
_TOD_Get_uptime( &CPU_usage_Uptime_at_last_reset );
|
||||
|
||||
cpu_count = rtems_get_processor_count();
|
||||
for ( cpu_index = 0 ; cpu_index < cpu_count ; ++cpu_index ) {
|
||||
Per_CPU_Control *cpu = _Per_CPU_Get_by_index( cpu_index );
|
||||
cpu_count = rtems_get_processor_count();
|
||||
for ( cpu_index = 0 ; cpu_index < cpu_count ; ++cpu_index ) {
|
||||
Per_CPU_Control *cpu = _Per_CPU_Get_by_index( cpu_index );
|
||||
|
||||
cpu->time_of_last_context_switch = CPU_usage_Uptime_at_last_reset;
|
||||
}
|
||||
#else
|
||||
CPU_usage_Ticks_at_last_reset = _Watchdog_Ticks_since_boot;
|
||||
#endif
|
||||
cpu->time_of_last_context_switch = CPU_usage_Uptime_at_last_reset;
|
||||
}
|
||||
|
||||
rtems_iterate_over_all_threads(CPU_usage_Per_thread_handler);
|
||||
}
|
||||
|
||||
@@ -144,31 +144,14 @@ static inline bool less_than_uint32_t( uint32_t * lhs, uint32_t * rhs )
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
#define CPU_usage_Equal_to( _lhs, _rhs ) \
|
||||
_Timestamp_Equal_to( _lhs, _rhs )
|
||||
#else
|
||||
#define CPU_usage_Equal_to( _lhs, _rhs ) \
|
||||
equal_to_uint32_t( _lhs, _rhs )
|
||||
#endif
|
||||
#define CPU_usage_Equal_to( _lhs, _rhs ) \
|
||||
_Timestamp_Equal_to( _lhs, _rhs )
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
#define CPU_usage_Set_to_zero( _time ) \
|
||||
_Timestamp_Set_to_zero( _time )
|
||||
#else
|
||||
#define CPU_usage_Set_to_zero( _time ) \
|
||||
do { \
|
||||
*_time = 0; \
|
||||
} while (0)
|
||||
#endif
|
||||
#define CPU_usage_Set_to_zero( _time ) \
|
||||
_Timestamp_Set_to_zero( _time )
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
#define CPU_usage_Less_than( _lhs, _rhs ) \
|
||||
_Timestamp_Less_than( _lhs, _rhs )
|
||||
#else
|
||||
#define CPU_usage_Less_than( _lhs, _rhs ) \
|
||||
less_than_uint32_t( _lhs, _rhs )
|
||||
#endif
|
||||
#define CPU_usage_Less_than( _lhs, _rhs ) \
|
||||
_Timestamp_Less_than( _lhs, _rhs )
|
||||
|
||||
static void
|
||||
print_memsize(rtems_cpu_usage_data* data, const uint32_t size, const char* label)
|
||||
@@ -581,11 +564,6 @@ void rtems_cpu_usage_top_with_plugin(
|
||||
rtems_printk_plugin_t print
|
||||
)
|
||||
{
|
||||
#ifdef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
if ( !print )
|
||||
return;
|
||||
(*print)(context, "error: tick kernels not supported\n");
|
||||
#else
|
||||
rtems_status_code sc;
|
||||
rtems_task_priority priority;
|
||||
rtems_name name;
|
||||
@@ -714,7 +692,6 @@ void rtems_cpu_usage_top_with_plugin(
|
||||
rtems_event_send(id, RTEMS_EVENT_1);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void rtems_cpu_usage_top( void )
|
||||
|
||||
@@ -25,9 +25,7 @@
|
||||
#include <rtems.h>
|
||||
#include <rtems/bspIo.h>
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
#include <rtems/score/timestamp.h>
|
||||
#endif
|
||||
#include <rtems/score/timestamp.h>
|
||||
|
||||
/**
|
||||
* @defgroup libmisc_cpuuse CPU Usage
|
||||
@@ -39,11 +37,7 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
|
||||
extern Timestamp_Control CPU_usage_Uptime_at_last_reset;
|
||||
#else
|
||||
extern uint32_t CPU_usage_Ticks_at_last_reset;
|
||||
#endif
|
||||
extern Timestamp_Control CPU_usage_Uptime_at_last_reset;
|
||||
|
||||
/*
|
||||
* rtems_cpu_usage_report_with_handler
|
||||
|
||||
Reference in New Issue
Block a user