Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Problem with kvm utilities on acorn32



David Brownlee wrote:
On 23 April 2014 19:14, Mike Pumford 
<mpumford%black-star.demon.co.uk@localhost> wrote:
Not sure how arch specific this is but I'm seeing a problem with various KVM
utilities on a 6.99.40 system on acorn32.

e.g

$ vmstat -i
vmstat: undefined symbols: _pool_head


Having searched the source code this symbol is a static variable in
subr_pool.c and looking at the .o file for that I see:
$ nm -n subr_pool.o | grep pool_head
00000024 d pool_head
000006d8 b pool_head_lock

However neither of these symbols appear in the output of 'nm -n netbsd'

Do we need to do some compiler magic to stop these symbols being optimized
out of the kernel or do the kvm utils need to be modified to accept the fact
that not all platforms will have the symbol?

Presumably it should be enough to make pool_head non static - eg:
change the def in subr_pool.c to

/* List of all pools. Non static as needed by vmstat */
TAILQ_HEAD(, pool) pool_head = TAILQ_HEAD_INITIALIZER(pool_head);

Yep that works.
Prebuilt kernel in case its easier to test... (my acorn32 box is at
the bottom of a very large pile of house contents)

Thanks for that but my kernel has quite a few tweaks as I'm trying to a little bit of modernization on the acorn32 specific code. In particular I'm tweaking the interrupt accounting to use event counters rather than the legacy method. My code was working with systat vmstat but I thought I ought to make sure the other kvm utilities that use those counters worked. :)

Mike


Home | Main Index | Thread Index | Old Index