On Sat, 20 Jul 2024 at 17:24, Paul Gevers <elb...@debian.org> wrote:

> I can give you access to a testbed on our infrastructure where you can
> play in a production environment exactly like the tests run. We'd need
> to align the date/time, as in the current way that I can provide this
> service, I need to be on-line at the same time.
>
Hi Paul,
  I basically need to see what vmstat is doing, there is something very odd
with the lxc environment
that CI uses and its making vmstat misbehave; I'm not even seeing it report
any errors except a return value.
The CI reports:
31s test_no_arguments
31s [1;31mASSERT: [0mvalue line
31s [1;31mshunit2:ERROR [0m test_no_arguments() returned non-zero return
code.

If the output is incorrect it looks like this:
Running
/home/csmall/Projects/procps/procps/testsuite/vmstat.test/vmstat.exp ...
FAIL: vmstat with no arguments

If I force vmstat to return non zero it looks like:
Running
/home/csmall/Projects/procps/procps/testsuite/vmstat.test/vmstat.exp ...

=== vmstat Summary ===

# of expected passes 4
# of unsupported tests 2

Which is odd looking but correct because the test script is looking for the
output.
Also the -a option doesn't fail, only the empty option, which narrows it
down further.

This means we're down to what is found in new_format() which 'vmstat' runs
but 'vmstat -a' does not.
Which is lines like:
        V( 4) = unitConvert((a_option?MEMv(mem_INA):MEMv(mem_BUF)));
        V( 5) = unitConvert((a_option?MEMv(mem_ACT):MEMv(mem_CAC)));

mem_BUF directly comes from /proc/meminfo line Buffers

mem_CAC is calculated by Cached + SReclaimable

Something is not right here, we've had issues in the past where lxc doesn't
quite put the right values in.
If possible, could you do the following?

$ grep -E '^(Buffers|Cached|SReclaimable):' /proc/meminfo ; vmstat
Buffers:         1221344 kB
Cached:         14260336 kB
SReclaimable:     885284 kB
procs -----------memory---------- ---swap-- -----io---- -system--
-------cpu-------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id
wa st gu
 1  0  13416 7994060 1221344 15145620    0    0    29   107 1372   22  8  1
91  0  0  0

buff column is the same as Buffers line (1221344)
cache column is Cached + SReclaimable (14260336 + 885284 = 15145620)

I tried it in a lxc container and vmstat works, but (correctly) shows 0 for
Buffers and SReclaimable.

 - Craig

Reply via email to