Some odd behaviour of vmstat and vmtotal...
gnn at freebsd.org
gnn at freebsd.org
Thu May 1 01:13:49 UTC 2008
Howdy,
In deploying 7.0 at work we were finding a persistent problem when
running "vmstat 1" on systems. The problem shows up as a 10ms "pause"
in processing, usually packet stamping and forwarding by a user level
process. This is due to the fact that vmstat calls the vmtotal()
routine which in turn does a whole lot of locking. The vmtotal call
locks and walks the VM object list twice in a mark and sweep
operation.
So, the question is, "What is the right way to fix this?" I could
remove the locking since the O_ACTIVE bit is not used by any other
routine besides vmtotal, but I'm not too happy about that.
The relevant code can be found in src/sys/vm/vm_meter.c in vmtotal().
Thoughts?
Best,
George
More information about the freebsd-stable
mailing list