Date: Sun, 17 Nov 2002 02:24:17 -0500 (EST) From: Garrett Wollman <wollman@lcs.mit.edu> To: Alfred Perlstein <alfred@FreeBSD.org> Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern vfs_aio.c src/lib/libc/gen sysconf.c src/sys/posix4 posix4.h posix4_mib.c Message-ID: <200211170724.gAH7OHkQ000622@khavrinen.lcs.mit.edu> In-Reply-To: <20021117070309.GH6882@elvis.mu.org> References: <200211170415.gAH4FYwL022645@repoman.freebsd.org> <200211170657.gAH6vQ7G000452@khavrinen.lcs.mit.edu> <20021117070309.GH6882@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
<<On Sat, 16 Nov 2002 23:03:09 -0800, Alfred Perlstein <alfred@FreeBSD.org> said: > In the future when I come to you for advice I'd really appreciate it > if you'd attempt to think one step ahead of me, especially if you have > strong opinions on how something should be done. Well, I thought it was pretty clear that the whole thing with the array was just an utter kluge. > I think part of the problem was that posix4 was optional before, > with it now manditory I think I can just SYSCTL_DECL the p31b > top of tree and move the relevant branches directly into the > aio code. I'm not certain that I understand what you're suggesting. All of the interfaces introduced in 1003.1b are still optional (from a POSIX perspective). When they are not available in the running kernel, the relevant sysctl()s should just fail, rather than going to some effort to return a wrong answer. The only trick to this is that it is necessary to distinguish between options (for which sysconf() must return either 0 or -1 if the option is not supported) and option-dependent configuration variables (for which sysconf() may and probably should indicate [EINVAL]). This is similar to, but not quite the same as, the distinction between `goto yesno' and `break' in sysconf.c. (These MIB variables should never have been given their own MIB tree, and the naming of the MIB tree and the `posix4' directory and header file are quite unfortunate. posix4_mib.c should eventually disappear, but we do seem to be stuck with <posix4/posix4.h> just for the definitions of the CTL_P1003_1B_* constants. Grumble.) -GAWollman To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211170724.gAH7OHkQ000622>