On Sun, Nov 29, 2009 at 09:31:46PM +0000, Mindaugas Rasiukevicius wrote: > matthew green <mrg%eterna.com.au@localhost> wrote: > > > I've committed a quick fix. However, the problem here is that > > > sys/sysctl.h, sys/proc.h and sys/lwp.h are exposing structures for KVM > > > grovellers to all userspace. Therefore struct kinfo_proc2, sys/proc.h and > > > friends should not even be seen. We will revisit this, hopefully.. > > > > struct kinfo_proc2 is _100%_ for exporting to userland. that's the sole > > purpose it exists... > > Yes, but does it need to be in public namespace in sysctl.h? It is a part > of separate interface - kvm(3), rarely used by regular applications. And > more to the point, it includes struct proc, struct lwp and so on, which is > messy. I realise that we probably cannot do much without breaking backwards > compatibility, though.. Huh? kinfo_proc2 is what is returned by sysctl for the proc subtree. And it doesn't include struct proc or anything ABI-unfriendly, you're confusing with its predecessor, kinfo_proc. Now, it is true that kinfo_proc could be removed from the API, which is I guess what you really seek here. Anything that still uses it should be changed to use the ABI-friendly interface. -- Quentin Garnier - cube%cubidou.net@localhost - cube%NetBSD.org@localhost "See the look on my face from staying too long in one place [...] every time the morning breaks I know I'm closer to falling" KT Tunstall, Saving My Face, Drastic Fantastic, 2007.
Attachment:
pgp0tQxUjpDj0.pgp
Description: PGP signature