Subject: Re: vmstat and netstat....
To: Nathan J. Williams <nathanw@wasabisystems.com>
From: Garrett D'Amore <garrett_damore@tadpole.com>
List: tech-kern
Date: 03/27/2006 08:18:20
Nathan J. Williams wrote:
> "Garrett D'Amore" <garrett_damore@tadpole.com> writes:
>
>   
>> Try vmstat -e.
>>     
>
> # ls /netbsd
> /netbsd
> # vmstat -e
> event                                         total     rate type
> uvmmap ubackmerge                          34018725        8 misc
> uvmmap uforwmerge                                 1        0 misc
> uvmmap unomerge                            36630956        8 misc
> uvmmap kbackmerge                            536684        0 misc
> .....
>
> # mv /netbsd /netbsd.foo
> # vmstat -e
> event                                         total     rate type
> uvmmap ubackmerge                          34018728        8 misc
> uvmmap uforwmerge                                 1        0 misc
> uvmmap unomerge                            36630988        8 misc
> uvmmap kbackmerge                            536684        0 misc
> ......
>
> "Looks good to me".
>
> Do you have an actual example that fails on an actual system, or a
> path through the code that clearly won't work in the absence of the
> kernel binary?
>
>         - Nathan
>   

Hmm... maybe the problem isn't in vmstat, per se, but in libkvm.

# mv /netbsd /netbsd.foo
# vmstat -e
vmstat: undefined symbols: _intrnames _eintrnames _intrcnt _eintrcnt _bucket

On evbmips:

cabernet# vmstat -e
vmstat: kvm_openfiles: /netbsd: No such file or directory

But now looking, it looks like the attempt to open /dev/ksyms on evbmips
at least returned ENXIO.  So maybe I need to enable ksyms.

By the way, ksyms is *also* a big size growth (though not as much as a
whole kernel).  I'd rather have a sysctl consumer than have to allocate
space in my kernel for a kernel symbol table.  (Again, this is because
I'm operating in situations with tight ram constraints -- 8MB ram, and
similar sized flash.)

-- 
Garrett D'Amore, Principal Software Engineer
Tadpole Computer / Computing Technologies Division,
General Dynamics C4 Systems
http://www.tadpolecomputer.com/
Phone: 951 325-2134  Fax: 951 325-2191