Subject: Re: kernel sysctl support for vmstat/iostat
To: Simon Burge <simonb@netbsd.org>
From: Matt Thomas <matt@3am-software.com>
List: tech-kern
Date: 06/18/2000 00:17:33
At 04:45 PM 6/18/2000 +1000, Simon Burge wrote:
>matthew green wrote:
>
> > I also plan to remove the "#ifndef _KERNEL" around sysctl.h's inclusion
> > of
> >
> > #include <sys/time.h>
> > #include <sys/ucred.h>
> > #include <sys/proc.h>
> > #include <vm/vm.h>
> >
> > It's a pain to have to remember to include these files (especially
> > <vm/vm.h> just to include <sys/sysctl.h>.
> >
> >
> > i don't care about the first 3, but i definately wouldn't mind seeing
> would mind ??
> > <vm/vm.h> going into <sys/sysctl.h> for now. after 1.5 branch, i am
> > planning on removing <vm/*.h>. if you make this change, please update
> > the documentation as such.
>
>The problem is that 'struct kinfo_proc' includes a 'struct vmspace',
>so we need to include _something_ to get that structure definition.
>Because non-kernel source always includes those 4 headers, sysctl(3)
>just says include include <sys/param.h> and <sys/sysctl.h>. It's kernel
>source that need to explicity include <vm/vm.h>. If we localise the
>inclusion to <sys/sysctl.h> now that's less kernel source to fix later
>when you do remove <vm/*.h>...
You really should not use vmspace but define your own structure with the
information you need. Then it's not a problem.
--
Matt Thomas Internet: matt@3am-software.com
3am Software Foundry WWW URL: http://www.3am-software.com/bio/matt/
Cupertino, CA Disclaimer: I avow all knowledge of this message