Date: Fri, 28 Dec 2007 12:19:14 +0100 From: Kris Kennaway <kris@FreeBSD.org> To: John Baldwin <jhb@FreeBSD.org> Cc: arch@FreeBSD.org Subject: Re: kernel features MIB Message-ID: <4774DBB2.5060707@FreeBSD.org> In-Reply-To: <200712271704.44796.jhb@FreeBSD.org>
index | next in thread | previous in thread | raw e-mail
John Baldwin wrote: > One of the things we have at work is a kern.features sysctl MIB that contains > nodes to indicate if a named feature is present. For example, on i386 we > have kern.features.pae and we auto enable -DPAE for kernel modules if the > currently running kernel is using PAE using that sysctl. > > One of the patches I want to commit soon is support for handling > shm_open/shm_unlink directly in the kernel via swap-backed VM objects (the > long-heralded memfd stuff). I would like to have the sysctl MIB so that > libc's for older releases (e.g. libc.so.6) could use the syscalls if they are > available so that shm segments are shared between compat apps (e.g. 4.x or > 6.x) and up-to-date apps. > > At work we don't have a pretty API for this at all, but I'm thinking for > FreeBSD we can do this: > > FEATURE(foo, "description of foo") > > which is a macro to create the 'kern.features.foo' node and set it to 1. Then > we could have a routine in libc: > > int feature_present(const char *name); > > That returns a boolean to indicate if a given feature is present or not by > invoking sysctlbyname(3), etc. > > Any objections to the idea? > I have wanted something like this for a long time. In ports land they often need to know this kind of thing, e.g. is compat4x support enabled in the kernel, etc. Krishome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4774DBB2.5060707>
