mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-29 10:54:06 +08:00
cpuload: Fix wrong idle thread load
When the CPU load monitor is started while already running, then the idle thread last_times[0] is reset to the last 1 second, rather than since when the CPU load monitor was last started. The remaining threads are not impacted, since their last_times[i] is reset to zero here. This results in the idle thread having a lower than real CPU load, with the remaining CPU time being wrongly attributed as scheduler load.
This commit is contained in:
parent
76a2acb222
commit
103ddb5b3d
@ -1610,6 +1610,11 @@ void Logger::print_load_callback(void *user)
|
||||
|
||||
void Logger::initialize_load_output(PrintLoadReason reason)
|
||||
{
|
||||
// If already in progress, don't try to start again
|
||||
if (_next_load_print != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
init_print_load(&_load);
|
||||
|
||||
if (reason == PrintLoadReason::Watchdog) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user