Wir nutzen Cookies, um Ihnen eine optimale Nutzung dieser Webseite zu ermöglichen. Mehr Informationen finden Sie im Datenschutzhinweis. Wir nehmen an, dass Sie damit einverstanden sind, falls Sie diese Webseite weiter besuchen.

Ihre Cookie-Einstellungen
Ihre Einstellungen wurden aktualisiert.
Damit die Änderungen wirksam werden, löschen Sie bitte Ihre Browser-Cookies und den Cache und laden dann die Seite neu.

Werk #6735: cpu_util_unix: Fixed calculation of CPU usage on UNIX

KomponenteChecks & Agents
Titelcpu_util_unix: Fixed calculation of CPU usage on UNIX
Datum2018-09-27 16:45:27
Checkmk EditionCheckmk Raw Edition (CRE)
Checkmk Version1.4.0p37,1.6.0b1,1.5.0p5
LevelTrivial Change
KlasseBug Fix
KompatibilitätKompatibel - benötigt kein manuelles Eingreifen

The result of the cpu_usage is wrong. The cpu_time_guest is included in cpu_time_user: See https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/kernel/sched/cputime.c for more information:



/*

* Account guest CPU time to a process.

* @p: the process that the CPU time gets accounted to

* @cputime: the CPU time spent in virtual machine since the last update

*/

void account_guest_time(struct task_struct *p, u64 cputime)

{

u64 *cpustat = kcpustat_this_cpu->cpustat;

/* Add guest time to process. */ p->utime += cputime; account_group_user_time(p, cputime); p->gtime += cputime;

/* Add guest time to cpustat. */ if (task_nice(p) > 0) { cpustat[CPUTIME_NICE] += cputime; cpustat[CPUTIME_GUEST_NICE] += cputime; } else { cpustat[CPUTIME_USER] += cputime; cpustat[CPUTIME_GUEST] += cputime; } }