From: Alexandre Derumier Date: Mon, 10 Jan 2022 04:53:00 +0000 (+0100) Subject: read_proc_stat: use total of fields to compute percentage X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=commitdiff_plain;h=faa1b46f0844ae609b8dbf416983b9d053b7731a read_proc_stat: use total of fields to compute percentage --- diff --git a/src/PVE/ProcFSTools.pm b/src/PVE/ProcFSTools.pm index 10c0cbd..88df5d2 100644 --- a/src/PVE/ProcFSTools.pm +++ b/src/PVE/ProcFSTools.pm @@ -214,11 +214,15 @@ sub read_proc_stat { if ($diff > 1000) { # don't update too often my $useddiff = $res->{used} - $last_proc_stat->{used}; $useddiff = $diff if $useddiff > $diff; - $res->{cpu} = $useddiff/$diff; + + my $totaldiff = $res->{total} - $last_proc_stat->{total}; + $totaldiff = $diff if $totaldiff > $diff; + + $res->{cpu} = $useddiff/$totaldiff; my $waitdiff = $res->{iowait} - $last_proc_stat->{iowait}; $waitdiff = $diff if $waitdiff > $diff; - $res->{wait} = $waitdiff/$diff; + $res->{wait} = $waitdiff/$totaldiff; $last_proc_stat = $res; } else {