From 39c98bc9a83a00a92c347e2cd6bafd010aac7800 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Wed, 27 Jun 2007 00:13:17 +0000 Subject: [PATCH] Use swap -l command to get virtual memory size --- proc/sysv-lib.pl | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/proc/sysv-lib.pl b/proc/sysv-lib.pl index b99954a3d..3cd718284 100644 --- a/proc/sysv-lib.pl +++ b/proc/sysv-lib.pl @@ -225,9 +225,17 @@ foreach my $s ("physmem", "freemem", "swap_alloc", "swap_avail") { $stat{$s} = $1; } } +local ($swaptotal, $swapfree); +&open_execute_command(SWAP, "swap -l", 1); +while() { + if (/^\S+\s+\d+,\d+\s+\d+\s+(\d+)\s+(\d+)/) { + $swaptotal += $1; + $swapfree += $2; + } + } +close(SWAP); return ($stat{'physmem'}*8, $stat{'freemem'}*8, - $stat{'swap_avail'}/1048576, - ($stat{'swap_avail'}-$stat{'swap_alloc'})/1048576); + $swaptotal/2, $swapfree/2); }