Date: 08 Dec 1997 11:27:06 +0100 From: Eivind Eklund <perhaps@yes.no> To: hackers@freebsd.org Subject: New option model (was Re: cvs commit: src/sys/kern kern_exit.c) Message-ID: <863ek4p1tx.fsf_-_@bitbox.follo.net> In-Reply-To: J Wunsch's message of Mon, 8 Dec 1997 09:17:29 %2B0100 References: <199712071816.KAA21840@freefall.freebsd.org> <19971208091729.40125@uriah.heep.sax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
[J Wunsch <j@uriah.heep.sax.de>] > As Sean Eric Fagan wrote: > > > sef 1997/12/07 10:16:45 PST > > > > Modified files: > > sys/kern kern_exit.c > > Log: > > Surround the call to procfs_exit() by #ifdef PROCFS/#endif -- much to my > > surprise, procfs actually is optional, and some people truly do generate > > kernels without it. Wow. I built a kernel without 'options PROCFS' and > > it compiled and linked. > > Without reviewing this patch, i'm fearing it might have broken the LKM > case for procfs now. sef did a later commit that fixed this - it should be OK now. > There should be no #ifdef FOOFS anywhere in the > code unless one is very careful to account for the LKM cases. All > these #ifdef FOOFS are the major showstopper to not switch the entire > kernel to the new option model (and once and for all get rid of the > "Removing old compile directory" hack in config(8) again). We should > move the entire kernel to the new option model before 3.0 ships. > (#ifdef INET etc. is the second class of showstoppers.) "New option model" refers to the opt_* header files, I guess? Are there anything more that should be done here than the following two steps? (1) weeding LINT against /sys/conf/options and /sys/i386/conf/options.i386 to find what options are not currently handled. (2) Add these options one by one to either /sys/conf/options or /sys/i386/conf/options.i386 as appropriate, at the same time going through the source and adding the correct option include to the files that use the symbol. The following is a result of running a weed against LINT and the options files - if each of these are taken care of, we shouldn't have to allow non-specified options anymore. If no other enterprising soul step forward, I might have a look at it - I think it might be possible to fix automatically with a perl script. (The ones listed in LINT and not options are the interesting ones). /sys/conf/options:ARP_PROXYALL opt_defunct.h /sys/conf/options:CHILD_MAX opt_defunct.h /sys/conf/options:EXTRAVNODES opt_defunct.h /sys/conf/options:OPEN_MAX opt_defunct.h /sys/i386/conf/LINT: BOOTP /sys/i386/conf/LINT: BOOTP_COMPAT /sys/i386/conf/LINT: BOOTP_NFSROOT /sys/i386/conf/LINT: BOOTP_NFSV3 /sys/i386/conf/LINT: CLUSTERDEBUG /sys/i386/conf/LINT: COMPAT_43 /sys/i386/conf/LINT: DEBUG /sys/i386/conf/LINT: DEVFS /sys/i386/conf/LINT: DIAGNOSTIC /sys/i386/conf/LINT: EXT2FS /sys/i386/conf/LINT: FAILSAFE /sys/i386/conf/LINT: FDSEEKWAIT /sys/i386/conf/LINT: FFS /sys/i386/conf/LINT: INET /sys/i386/conf/LINT: IPTUNNEL /sys/i386/conf/LINT: IPX /sys/i386/conf/LINT: IPXIP /sys/i386/conf/LINT: LFS /sys/i386/conf/LINT: LINT_PCCARD_HACK /sys/i386/conf/LINT: LOCKF_DEBUG /sys/i386/conf/LINT: MD5 /sys/i386/conf/LINT: MFS_AUTOLOAD /sys/i386/conf/LINT: MFS_ROOT /sys/i386/conf/LINT: MSDOSFS /sys/i386/conf/LINT: NATM /sys/i386/conf/LINT: NETATALK /sys/i386/conf/LINT: NFS /sys/i386/conf/LINT: NPX_DEBUG /sys/i386/conf/LINT: NQNFS /sys/i386/conf/LINT: NSWAPDEV /sys/i386/conf/LINT: POWERFAIL_NMI /sys/i386/conf/LINT: SCSI_2_DEF /sys/i386/conf/LINT: SIMPLELOCK_DEBUG /sys/i386/conf/LINT: SI_DEBUG /sys/i386/conf/LINT: SPX_HACK /sys/i386/conf/LINT: SUIDDIR /sys/i386/conf/LINT: TCP_COMPAT_42 /sys/i386/conf/options.i386:AHC_SHARE_SCBS opt_aic7xxx.h /sys/i386/conf/options.i386:AUTO_EOI_2 opt_auto_eoi.h /sys/i386/conf/options.i386:BOUNCEPAGES opt_bounce.h /sys/i386/conf/options.i386:COMCONSOLE opt_defunct.h /sys/i386/conf/options.i386:CONADDR opt_defunct.h /sys/i386/conf/options.i386:CONUNIT opt_defunct.h /sys/i386/conf/options.i386:PANIC_REBOOT_WAIT_TIME opt_panic.h /sys/i386/conf/options.i386:PCVT_24LINESDEF opt_pcvt.h /sys/i386/conf/options.i386:PCVT_CTRL_ALT_DEL opt_pcvt.h /sys/i386/conf/options.i386:PCVT_EMU_MOUSE opt_pcvt.h /sys/i386/conf/options.i386:PCVT_FREEBSD opt_pcvt.h /sys/i386/conf/options.i386:PCVT_META_ESC opt_pcvt.h /sys/i386/conf/options.i386:PCVT_NSCREENS opt_pcvt.h /sys/i386/conf/options.i386:PCVT_PRETTYSCRNS opt_pcvt.h /sys/i386/conf/options.i386:PCVT_SCREENSAVER opt_pcvt.h /sys/i386/conf/options.i386:PCVT_USEKBDSEC opt_pcvt.h /sys/i386/conf/options.i386:PCVT_VT220KEYB opt_pcvt.h /sys/i386/conf/options.i386:SC_SPLASH_SCREEN opt_syscons.h Eivind.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?863ek4p1tx.fsf_-_>