mem: adjusted calculation; #271

This commit is contained in:
copycat-killer 2017-01-24 16:38:28 +01:00
parent e0d4a89435
commit ea4e4f41b3
2 changed files with 10 additions and 10 deletions

View File

@ -11,7 +11,7 @@ local newtimer = require("lain.helpers").newtimer
local wibox = require("wibox") local wibox = require("wibox")
local gmatch = string.gmatch local gmatch = string.gmatch
local lines = io.lines local lines = io.lines
local math = { ceil = math.ceil, floor = math.floor } local floor = math.floor
local setmetatable = setmetatable local setmetatable = setmetatable
-- Memory usage (ignoring caches) -- Memory usage (ignoring caches)
@ -29,13 +29,13 @@ local function worker(args)
mem_now = {} mem_now = {}
for line in lines("/proc/meminfo") do for line in lines("/proc/meminfo") do
for k, v in gmatch(line, "([%a]+):[%s]+([%d]+).+") do for k, v in gmatch(line, "([%a]+):[%s]+([%d]+).+") do
if k == "MemTotal" then mem_now.total = math.ceil(v / 1024) if k == "MemTotal" then mem_now.total = floor(v / 1024 + 0.5)
elseif k == "MemFree" then mem_now.free = math.ceil(v / 1024) elseif k == "MemFree" then mem_now.free = floor(v / 1024 + 0.5)
elseif k == "Buffers" then mem_now.buf = math.ceil(v / 1024) elseif k == "Buffers" then mem_now.buf = floor(v / 1024 + 0.5)
elseif k == "Cached" then mem_now.cache = math.ceil(v / 1024) elseif k == "Cached" then mem_now.cache = floor(v / 1024 + 0.5)
elseif k == "SwapTotal" then mem_now.swap = math.ceil(v / 1024) elseif k == "SwapTotal" then mem_now.swap = floor(v / 1024 + 0.5)
elseif k == "SwapFree" then mem_now.swapf = math.ceil(v / 1024) elseif k == "SwapFree" then mem_now.swapf = floor(v / 1024 + 0.5)
elseif k == "SReclaimable" then mem_now.srec = math.ceil(v / 1024) elseif k == "SReclaimable" then mem_now.srec = floor(v / 1024 + 0.5)
end end
end end
end end

View File

@ -32,8 +32,8 @@ local function worker(args)
local settings = args.settings or function() end local settings = args.settings or function() end
-- Compatibility with old API where iface was a string corresponding to 1 interface -- Compatibility with old API where iface was a string corresponding to 1 interface
net.iface = (args.iface and (type(args.iface) == "string" and {args.iface}) or (type(args.iface) == "table" and args.iface)) or {} net.iface = (args.iface and (type(args.iface) == "string" and {args.iface}) or
(type(args.iface) == "table" and args.iface)) or {}
function net.get_device() function net.get_device()
helpers.async(string.format("ip link show", device_cmd), function(ws) helpers.async(string.format("ip link show", device_cmd), function(ws)