]> granicus.if.org Git - procps-ng/commitdiff
library: correct 'use' calculations for <slabinfo> api
authorJim Warner <james.warner@comcast.net>
Wed, 29 Nov 2017 06:00:00 +0000 (00:00 -0600)
committerCraig Small <csmall@enc.com.au>
Wed, 20 Dec 2017 10:18:54 +0000 (21:18 +1100)
Awhile back, the calculation for cache utilization was
corrected to avoid a 32 bit overflow. This commit just
brings this branch into line with that earlier change.

[ references shown below represent the master branch ]

Reference(s):
commit 23ba442c886f6250d1068a82fb7d0fc544acfd63
https://gitlab.com/procps-ng/procps/merge_requests/29
http://www.freelists.org/post/procps/fix-regression-created-by-99d71ad

Signed-off-by: Jim Warner <james.warner@comcast.net>
proc/slabinfo.c

index 2bd6b568eeaf78b44538c033e89f0ea47bd9660c..ba0219c4446d5381c6f44d3f3a68e5f6d8ee49b6 100644 (file)
@@ -427,7 +427,7 @@ static int parse_slabinfo20 (
         node->cache_size = (unsigned long)node->nr_slabs * node->pages_per_slab * page_size;
 
         if (node->nr_objs) {
-            node->use = (unsigned int)100 * (node->nr_active_objs / node->nr_objs);
+            node->use = (unsigned int)(100 * ((float)node->nr_active_objs / node->nr_objs));
             slabs->nr_active_caches++;
         } else
             node->use = 0;