xref: /netbsd-src/share/man/man4/options.4 (revision 481fca6e59249d8ffcf24fef7cfbe7b131bfb080)
1.\"	$NetBSD: options.4,v 1.111 2000/07/05 14:54:01 sommerfeld Exp $
2.\"
3.\" Copyright (c) 1996
4.\" 	Perry E. Metzger.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. All advertising materials mentioning features or use of this software
15.\"    must display the following acknowledgment:
16.\"	This product includes software developed for the NetBSD Project
17.\"	by Perry E. Metzger.
18.\" 4. The name of the author may not be used to endorse or promote products
19.\"    derived from this software without specific prior written permission.
20.\"
21.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
22.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
23.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
24.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
25.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
26.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31.\"
32.\"
33.Dd April 13, 2000
34.Os
35.Dt OPTIONS 4
36.Sh NAME
37.Nm options
38.Nd Miscellaneous kernel configuration options
39.Sh SYNOPSIS
40.Cd options ...
41.Sh DESCRIPTION
42This manual page describes a number of miscellaneous kernel
43configuration options that may be specified in a kernel config
44file.
45See
46.Xr config 8
47for information on how to configure and build kernels.
48.Em Note:
49Options are passed to the compile process as -D flags to the C
50compiler.
51.Ss Compatibility Options
52.Bl -ohang
53.It Cd options COMPAT_09
54Enable binary compatibility with
55.Nx 0.9 .
56This enables support for
5716-bit user, group, and process ids (following revisions support
5832-bit identifiers),
59It also allows the use of the deprecated
60.Xr getdomainname 3 ,
61.Xr setdomainname 3 ,
62and
63.Xr uname 3
64syscalls.
65This option also allows using numeric filesystem identifiers rather
66than strings.
67Post
68.Nx 0.9
69versions use string identifiers.
70.It Cd options COMPAT_10
71Enable binary compatibility with
72.Nx 1.0 .
73This option allows the use of the filesystem name of
74.Dq ufs
75as an alias for
76.Dq ffs .
77The name
78.Dq ffs
79should be used post 1.0 in
80.Pa /etc/fstab
81and other files.
82It also adds old syscalls for the
83.At V
84shared memory interface.
85This was changed post 1.0 to work on 64-bit architectures.
86This option also enables
87.Dq sgtty
88compatibility, without which programs using the old interface produce
89an
90.Dq inappropriate ioctl
91error.
92.It Cd options COMPAT_11
93Enable binary compatibility with
94.Nx 1.1 .
95This allows binaries running on the i386 port to gain direct access to
96the io ports by opening
97.Pa /dev/io
98read/write.
99This functionality was replaced by
100.Xr i386_iopl 2
101post 1.1.
102On the
103.Tn Atari
104port, the location of the disk label was moved after 1.1.
105When the
106.Em COMPAT_11
107option is set, the kernel will read (pre) 1.1 style disk labels as a
108last resort.
109When a disklabel is re-written, the old style label will be replaced
110with a post 1.1 style label.
111.It Cd options COMPAT_12
112Enable binary compatibility with
113.Nx 1.2 .
114This allows the use of old syscalls for
115.Fn reboot
116and
117.Fn swapon .
118The syscall numbers were changed post 1.2 to add functionality to the
119.Xr reboot 2
120syscall, and the new
121.Xr swapctl 2
122interface was introduced.
123.It Cd options COMPAT_13
124Enable binary compatibility with
125.Nx 1.3 .
126This allows the use of old syscalls for
127.Fn sigaltstack ,
128and also enables the old
129.Xr swapctl 2
130command
131.Dv SWAP_STATS
132(now called
133.Dv SWAP_OSTATS ) ,
134which does not include the
135.Fa se_path
136member of
137.Va struct swapent .
138.It Cd options COMPAT_14
139Enable binary compatibility with
140.Nx 1.4 .
141This allows some old
142.Xr ioctl 2
143on
144.Xr wscons 4
145to be performed, and allows the
146.Dv NFSSVC_BIOD
147mode of the
148.Xr nfssvc 2
149system call to be used for compatibility with the deprecated nfsiod program.
150.It Cd options COMPAT_43
151Enables compatibility with
152.Bx 4.3 .
153This adds an old syscall for
154.Xr lseek 2 .
155It also adds the ioctls for
156.Dv TIOCGETP
157and
158.Dv TIOCSETP .
159The return values for
160.Xr getpid 2 ,
161.Xr getgid 2 ,
162and
163.Xr getuid 2
164syscalls are modified as well, to return the parent's pid and
165uid as well as the current process's.
166It also enables the deprecated
167.Dv NTTYDISC
168terminal line discipline.
169It also provides backwards compatibility with
170.Dq old
171SIOC[GS]IF{ADDR,DSTADDR,BRDADDR,NETMASK} interface ioctls, including
172binary compatibility with code written before the introduction of the
173sa_len field in sockaddrs.
174It also enables
175support for some older pre
176.Bx 4.4
177socket calls.
178.It Cd options COMPAT_SVR4
179On those architectures that support it, this enables binary
180compatibility with
181.At V.4
182applications built for the same architecture.
183This currently includes the i386, m68k and sparc port.
184.It Cd options COMPAT_LINUX
185On those architectures that support it, this enables binary
186compatibility with Linux ELF and
187.Xr a.out 5
188applications built for the same architecture.
189This currently includes the alpha, i386, and m68k port.
190.It Cd options COMPAT_SUNOS
191On those architectures that support it, this enables binary
192compatibility with
193.Tn SunOS 4.1
194applications built for the same architecture.
195This currently includes the sparc and most or all m68k ports.
196.It Cd options COMPAT_ULTRIX
197On those architectures that support it, this enables binary
198compatibility with
199.Tn Ultrix
200applications built for the same architecture.
201This currently is limited to the pmax.
202The functionality of this option is unknown.
203.It Cd options COMPAT_FREEBSD
204On those architectures that support it, this enables binary
205compatibility with
206.Fx
207applications built for the same architecture.
208At the moment this is limited to the i386 port.
209.It Cd options COMPAT_HPUX
210On those architectures that support it, this enables binary
211compatibility with
212.Tn HP/UX
213applications built for the same architecture.
214This is limited to the hp300 port, and has some known bugs.
215A limited set of programs do work.
216.It Cd options COMPAT_IBCS2
217On those architectures that support it, this enables binary
218compatibility with iBCS2 or SVR3 applications built for the same architecture.
219This is currently limited to the i386 and vax ports.
220.It Cd options COMPAT_OSF1
221On those architectures that support it, this enables binary
222compatibility with
223.Tn Digital
224.Ux
225.Po
226formerly
227.Tn OSF/1
228.Pc
229applications built for the same architecture.
230This is currently limited to the alpha port.
231.It Cd options COMPAT_NOMID
232Enable compatibility with
233.Xr a.out 5
234executables that lack a machine ID.
235This includes
236.Nx 0.8 Ns 's
237ZMAGIC format, and 386BSD and BSDI's
238QMAGIC, NMAGIC, and OMAGIC
239.Xr a.out 5
240formats.
241.El
242.Ss Debugging Options
243.Bl -ohang
244.It Cd options DDB
245Compiles in a kernel debugger for diagnosing kernel problems.
246See
247.Xr ddb 4
248for details.
249.Em NOTE:
250not available on all architectures.
251.It Cd options DDB_FROMCONSOLE=integer
252If set to non-zero, DDB may be entered by sending a break on a serial
253console or by a special key sequence on a graphics console.
254A value of "0" ignores console breaks or key sequences,
255It not explicitly specified, the default value is "1".
256Note that this sets the value of the
257.Em ddb.fromconsole
258.Xr sysctl 3
259variable which may be changed at run time -- see
260.Xr sysctl 8
261for details.
262.It Cd options DDB_HISTORY_SIZE=integer
263If this is non-zero, enable history editing in the kernel debugger
264and set the size of the history to this value.
265.It Cd options DDB_ONPANIC
266If set to non-zero, the DDB will be entered upon kernel panic.
267The default if not specified is "1".
268Note that this sets the value of the
269.Em ddb.onpanic
270.Xr sysctl 3
271variable which may be changed at run time -- see
272.Xr sysctl 8
273for details.
274.It Cd options KGDB
275Compiles in a remote kernel debugger stub for diagnosing kernel problems
276using the
277.Dq remote target
278feature of gdb.
279See
280.Xr gdb 1
281for details.
282.Em NOTE:
283not available on all architectures.
284.It Cd makeoptions DEBUG="-g"
285The -g flag causes
286.Pa netbsd.gdb
287to be built in addition to
288.Pa netbsd .
289.Pa netbsd.gdb
290is useful for debugging kernel crash dumps with gdb.
291The command
292.Dl gdb -k
293invokes gdb in kernel debugger mode.
294See
295.Xr gdb 1
296for details.
297This also turns on
298.Em options DEBUG
299(which see).
300.It Cd options DEBUG
301Turns on miscellaneous kernel debugging.
302Since options are turned into preprocessor defines (see above),
303.Em options DEBUG
304is equivalent to doing a
305.Em #define DEBUG
306throughout the kernel.
307Much of the kernel has
308.Em #ifdef DEBUG
309conditionalized debugging code.
310Note that many parts of the kernel (typically device drivers) include their own
311.Em #ifdef XXX_DEBUG
312conditionals instead.
313This option also turns on certain other options,
314which may decrease system performance.
315.It Cd options DIAGNOSTIC
316Adds code to the kernel that does internal consistency checks.
317This code will cause the kernel to panic if corruption of internal data
318structures is detected.
319.It Cd options KTRACE
320Add hooks for the system call tracing facility, which allows users to
321watch the system call invocation behavior of processes.
322See
323.Xr ktrace 1
324for details.
325.It Cd options MSGBUFSIZE=integer
326This option sets the size of the kernel message buffer.
327This buffer holds the kernel output of
328.Fn printf
329when not (yet) read by
330.Xr syslogd 8 .
331This is particularly useful when the system has crashed and you wish to lookup
332the kernel output from just before the crash.
333Also, since the autoconfig output becomes more and more verbose,
334it sometimes happens that the message buffer overflows before
335.Xr syslogd 8
336was able to read it.
337Note that not all systems are capable of obtaining a variable sized message
338buffer.
339There are also some systems on which memory contents are not preserved
340across reboots.
341.It Cd options MALLOCLOG
342Enables an event log for
343.Xr malloc 9 .
344Useful for tracking down
345.Dq Data modified on freelist
346and
347.Dq multiple free
348problems.
349.It Cd options MALLOCLOGSIZE=integer
350Defines the number of entries in the malloc log.
351Default is 100000 entries.
352.El
353.Ss File Systems
354.Bl -ohang
355.It Cd file-system FFS
356Includes code implementing the Berkeley Fast File System
357.Em ( FFS ) .
358Most machines need this if they are not running diskless.
359.It Cd file-system EXT2FS
360Includes code implementing the Second Extended File System
361.Em ( EXT2FS )
362, revision 0 and revision 1 with the
363.Em filetype
364and
365.Em spase_super
366options.  This is the most commonly used file system on the Linux operating
367system, and is provided here for compatibility.
368Some of the specific features of
369.Em EXT2FS
370like the "behavior on errors" are not implemented.
371This file system can't be used with UID or GID greater than 65535.
372See
373.Xr mount_ext2fs 8
374for details.
375.It Cd file-system LFS
376.Em [EXPERIMENTAL]
377Include the Log-structured File System
378.Em ( LFS ) .
379See
380.Xr mount_lfs 8
381and
382.Xr newlfs 8
383for details.
384.It Cd file-system MFS
385Include the Memory File System
386.Em ( MFS ) .
387This file system stores files in swappable memory, and produces
388notable performance improvements when it is used as the file store
389for
390.Pa /tmp
391and similar file systems.
392See
393.Xr mount_mfs 8
394for details.
395.It Cd file-system NFS
396Include the client side of the Network File System
397.Pq Tn NFS
398remote file sharing protocol.
399Although the bulk of the code implementing
400.Tn NFS
401is kernel based, several user level daemons are needed for it to work.
402See
403.Xr mount_nfs 8
404and
405.Xr nfsiod 8
406for details.
407.It Cd file-system CD9660
408Includes code for the
409.Tn ISO
4109660 + Rock Ridge file system, which is the standard file system on many
411.Tn CD-ROM
412discs.
413Useful primarily if you have a
414.Tn CD-ROM
415drive.
416See
417.Xr mount_cd9660 8
418for details.
419.It Cd file-system MSDOSFS
420Includes the
421.Tn MS-DOS
422FAT file system, which is reportedly still used
423by unfortunate people who have not heard about
424.Nx .
425Also implements the
426.Tn Windows 95
427extensions to the same, which permit the use of longer, mixed case
428file names.
429See
430.Xr mount_msdos 8
431and
432.Xr fsck_msdos 8
433for details.
434.It Cd file-system NTFS
435[EXPERIMENTAL] Includes code for the
436.Tn Microsoft Windows NT
437file system.
438See
439.Xr mount_ntfs 8
440for details.
441.It Cd file-system FDESC
442Includes code for a file system, conventionally mounted on
443.Pa /dev/fd ,
444which permits access to the per-process file descriptor space via
445special files in the file system.
446See
447.Xr mount_fdesc 8
448for details.
449Note that this facility is redundant, and thus unneeded on most
450.Nx
451systems, since the
452.Xr fd 4
453pseudodevice driver already provides identical functionality.
454On most
455.Nx
456systems, instances of
457.Xr fd 4
458are mknoded under
459.Pa /dev/fd/
460and on
461.Pa /dev/stdin ,
462.Pa /dev/stdout ,
463and
464.Pa /dev/stderr .
465.It Cd file-system KERNFS
466Includes code which permits the mounting of a special file system
467(normally mounted on
468.Pa /kern )
469in which files representing various kernel variables and parameters
470may be found.
471See
472.Xr mount_kernfs 8
473for details.
474.It Cd file-system NULLFS
475Includes code for a loopback file system.
476This permits portions of the file hierarchy to be re-mounted in other places.
477The code really exists to provide an example of a stackable file system layer.
478See
479.Xr mount_null 8
480for details.
481.It Cd file-system OVERLAY
482Includes code for a file system filter.
483This permits the overlay file system to intercept all access to an underlying
484file system. This file system is intended to serve as an example of
485a stacking file system which has a need to interpose itself between an
486underlying file system and all other access.
487See
488.Xr mount_overlay 8
489for details.
490.It Cd file-system PORTAL
491.Em [EXPERIMENTAL]
492Includes the portal filesystem.
493This permits interesting tricks like opening
494.Tn TCP
495sockets by opening files in the file system.
496The portal file system is conventionally mounted on
497.Pa /p
498and is partially implemented by a special daemon.
499See
500.Xr mount_portal 8
501for details.
502.It Cd file-system PROCFS
503Includes code for a special file system (conventionally mounted on
504.Pa /proc )
505in which the process space becomes visible in the file system.
506Among
507other things, the memory spaces of processes running on the system are
508visible as files, and signals may be sent to processes by writing to
509.Pa ctl
510files in the procfs namespace.
511See
512.Xr mount_procfs 8
513for details.
514.It Cd file-system UMAPFS
515Includes a loopback file system in which user and group ids may be
516remapped -- this can be useful when mounting alien file systems with
517different uids and gids than the local system.
518See
519.Xr mount_umap 8
520for details.
521.It Cd file-system UNION
522.Em [EXPERIMENTAL]
523Includes code for the union file system, which permits directories to
524be mounted on top of each other in such a way that both file systems
525remain visible -- this permits tricks like allowing writing (and the
526deleting of files) on a read-only file system like a
527.Tn CD-ROM
528by mounting a local writable file system on top of the read-only file system.
529See
530.Xr mount_union 8
531for details.
532.It Cd file-system CODA
533.Em [EXPERIMENTAL]
534Includes code for the Coda file system.
535Coda is a distributed file system like NFS and AFS.  It is
536freely available, like NFS, but it functions much like AFS in being a
537"stateful" file system.  Both Coda and AFS cache files on your local
538machine to improve performance.  Then Coda goes a step further than AFS
539by letting you access the cached files when there is no available
540network, viz. disconnected laptops and network outages.  In Coda, both
541the client and server are outside the kernel which makes them easier
542to experiment with.  Coda is available for several UNIX and non-UNIX
543platforms.
544See http://www.coda.cs.cmu.edu for more details.
545NOTE: You also need to enable the pseudo-device, vcoda, for the Coda
546filesystem to work.
547.El
548.Ss File System Options
549.Bl -ohang
550.It Cd options NFSSERVER
551Include the server side of the
552.Em NFS
553(Network File System) remote file sharing protocol.
554Although the bulk of the code implementing
555.Em NFS
556is kernel based, several user level daemons are needed for it to
557work.
558See
559.Xr mountd 8
560and
561.Xr nfsd 8
562for details.
563.It Cd options QUOTA
564Enables kernel support for file system quotas.
565See
566.Xr quotaon 8 ,
567.Xr edquota 8 ,
568and
569.Xr quota 1
570for details.
571Note that quotas only work on
572.Dq ffs
573file systems, although
574.Xr rpc.rquotad 8
575permits them to be accessed over
576.Em NFS .
577.It Cd options FFS_EI
578Enable ``Endian-Independent'' FFS support.
579This allows a system to mount an FFS filesystem created for another
580architecture, at a small performance cost for all FFS filesytems.
581See also
582.Xr newfs 8 ,
583.Xr fsck_ffs 8 ,
584.Xr dumpfs 8
585for filesystem byte order status and manipulation.
586.It Cd options NVNODE=integer
587This option sets the size of the cache used by the name-to-inode translation
588routines, (a.k.a. the
589.Fn namei
590cache, though called by many other names in the kernel source).
591By default, this cache has
592.Dv NPROC
593(set as 20 + 16 * MAXUSERS) * (80 + NPROC / 8) entries.
594A reasonable way to derive a value of
595.Dv NVNODE ,
596should you notice a large number of namei cache misses with a tool such as
597.Xr systat 1 ,
598is to examine your system's current computed value with
599.Xr sysctl 8 ,
600(which calls this parameter "kern.maxvnodes") and to increase this value
601until either the namei cache hit rate improves or it is determined that
602your system does not benefit substantially from an increase in the size of
603the namei cache.
604.It Cd options EXT2FS_SYSTEM_FLAGS
605This option changes the behavior of the APPEND and IMMUTABLE flags
606for a file on an
607.Em EXT2FS
608filesystem.
609Without this option, the superuser or owner of the file can
610set and clear them.
611With this option, only the superuser can set them, and
612they can't be cleared if the securelevel is greater than 0.
613See also
614.Xr chflags 1 .
615.It Cd options NFS_BOOT_BOOTP
616Enable use of the BOOTP protocol (RFC 951, 1048) to get configuration
617information if NFS is used to mount the root file system.
618See
619.Xr diskless 8
620for details.
621.It Cd options NFS_BOOT_DHCP
622Same as
623.Dq NFS_BOOT_BOOTP
624, but use the DHCP extensions to the
625BOOTP protocol (RFC 1541).
626.It Cd options NFS_BOOT_BOOTPARAM
627Enable use of the BOOTPARAM protocol, consisting of RARP and
628BOOTPARAM RPC, to get configuration information if NFS
629is used to mount the root file system.
630See
631.Xr diskless 8
632for details.
633.It Cd options NFS_BOOT_RWSIZE=value
634Set the initial NFS read and write sizes for diskless-boot requests.
635The normal default is 8Kbytes.  This option provides a way to lower
636the value (e.g., to 1024 bytes) as a workaround for buggy network
637interface cards or boot proms. Once booted, the read and write request
638sizes can be increased by remounting the filesystem. See
639.Xr mount_nfs 8
640for details.
641.El
642.Ss Miscellaneous Options
643.Bl -ohang
644.It Cd options LKM
645Enable loadable kernel modules.
646See
647.Xr lkm 4
648for details.
649.Em NOTE :
650not available on all architectures.
651.It Cd options INSECURE
652Hardwires the kernel security level at -1.
653This means that the system
654always runs in secure level 0 mode, even when running multiuser.
655See the manual page for
656.Xr init 8
657for details on the implications of this.
658The kernel secure level may manipulated by the superuser by altering the
659.Em kern.securelevel
660.Xr sysctl 3
661variable (the secure level may only be lowered by a call from process ID 1,
662i.e.
663.Xr init 8 ) .
664See also
665.Xr sysctl 8
666and
667.Xr sysctl 3 .
668.It Cd options UCONSOLE
669Normally, only the superuser can execute the
670.Dv TIOCCONS
671.Xr ioctl 2 ,
672which redirects console output to a non-console tty.
673See
674.Xr tty 4
675for details.
676This option permits any user to execute the
677.Dv TIOCCONS
678.Xr ioctl 2 .
679This is useful on
680machines such as personal workstations which run
681.Xr X 1
682servers, where one would prefer to permit console output to be
683viewed in a window without requiring a suid root program to do it.
684.It Cd options MEMORY_DISK_HOOKS
685This option allows for some machine dependent functions to be called when
686the
687.Tn RAM
688disk driver is configured.
689This can result in automatically loading a
690.Tn RAM
691disk from floppy on open (among other things).
692.It Cd options MEMORY_DISK_IS_ROOT
693Forces the
694.Tn RAM
695disk to be the root device.
696This can only be overridden when
697the kernel is booted in the 'ask-for-root' mode.
698.It Cd options NTP
699Turns on in-kernel precision timekeeping support used by software
700implementing
701.Em NTP
702(Network Time Protocol, RFC1305).
703The
704.Em NTP
705option adds an in-kernel Phase-Locked Loop (PLL) for normal
706.Em NTP
707operation, and a Frequency-Locked Loop (FLL) for intermittently-connected
708operation.
709.Xr ntpd 8
710will employ a user-level PLL when kernel support is unavailable,
711but the in-kernel version has lower latency and more precision, and
712so typically keeps much better time.
713The interface to the kernel
714.Em NTP
715support is provided by the
716.Xr ntp_adjtime 2
717and
718.Xr ntp_gettime 2
719system calls, which are intended for use by
720.Xr ntpd 8
721and are enabled by the option.
722On systems with sub-microsecond resolution timers, or where (HZ / 100000)
723is not an integer, the
724.Em NTP
725option also enables extended-precision arithmetic to keep track of
726fractional clock ticks at NTP time-format precision.
727.It Cd options PPS_SYNC
728This option enables a kernel serial line discipline for receiving time
729phase signals from an external reference clock such as a radio clock.
730(The
731.Em NTP
732option (which see) must be on if the
733.Em PPS_SYNC
734option is used.)
735Some reference clocks generate a Pulse Per Second (PPS) signal in
736phase with their time source.
737The
738.Em PPS
739line discipline receives this signal on either the data leads
740or the DCD control lead of a serial port.
741.Em NTP
742uses the PPS signal to discipline the local clock oscillator to a high
743degree of precision (typically less than 50 microseconds in time and
7440.1 ppm in accuracy).
745.Em PPS
746can also generate a serial output pulse when the system receives a PPS
747interrupt.
748This can be used to measure the system interrupt latency and thus calibrate
749.Em NTP
750to account for it.
751Using
752.Em PPS
753usually requires a
754gadget box
755to convert from TTL to RS-232 signal levels.
756The gadget box and PPS are described in more detail in the HTML documentation
757shipped with the ntpd distribution.
758.It Cd options SETUIDSCRIPTS
759Allows scripts with the setuid bit set to execute as the effective
760user rather than the real user, just like binary executables.
761.Pp
762.Em NOTE :
763Using this option will also enable
764.Em options FDSCRIPTS
765.It Cd option FDSCRIPTS
766Allows execution of scripts with the execute bit set, but not the
767read bit, by opening the file and passing the file descriptor to
768the shell, rather than the filename.
769.Pp
770.Em NOTE :
771Execute only (non-readable) scripts will have
772.Va argv[0]
773set to
774.Pa /dev/fd/* .
775What this option allows as far as security is
776concerned, is the ability to safely ensure that the correct script
777is run by the interpreter, as it is passed as an already open file.
778.It Cd options RTC_OFFSET=integer
779The kernel (and typically the hardware battery backed-up clock on
780those machines that have one) keeps time in
781.Em UTC
782(Universal Coordinated Time, once known as
783.Em GMT ,
784or Greenwich Mean Time)
785and not in the time of the local time zone.
786The
787.Em RTC_OFFSET
788option is used on some ports (such as the i386) to tell the kernel
789that the hardware clock is offset from
790.Em UTC
791by the specified number of minutes.
792This is typically used when a machine boots several operating
793systems and one of them wants the hardware clock to run in the
794local time zone and not in
795.Em UTC ,
796e.g.
797.Em RTC_OFFSET=300
798means
799the hardware clock is set to US Eastern Time (300 minutes behind
800.Em UTC ) ,
801and not
802.Em UTC .
803(Note:
804.Em RTC_OFFSET
805is used to initialize a kernel variable named
806.Va rtc_offset
807which is the source actually used to determine the clock offset, and
808which may be accessed via the kern.rtc_offset sysctl variable.
809See
810.Xr sysctl 8
811and
812.Xr sysctl 3
813for details.
814Since the kernel clock is initialized from the hardware clock very
815early in the boot process, it is not possible to meaningfully change
816.Va rtc_offset
817in system initialization scripts.
818Changing this value currently may only be done at kernel compile
819time or by patching the kernel and rebooting).
820.Pp
821.Em NOTE :
822Unfortunately, in many cases where the hardware clock
823is kept in local time, it is adjusted for Daylight Savings
824Time; this means that attempting to use
825.Em RTC_OFFSET
826to let NetBSD coexist with such an operating system, like Windows,
827would necessitate changing
828.Em RTC_OFFSET
829twice a year. As such, this solution is imperfect.
830.It Cd options KMEMSTATS
831The kernel memory allocator,
832.Xr malloc 9 ,
833will keep statistics on its performance if this option is enabled.
834Unfortunately, this option therefore essentially disables the
835.Fn MALLOC
836and
837.Fn FREE
838forms of the memory allocator, which are used to enhance the performance
839of certain critical sections of code in the kernel.
840This option therefore can lead to a significant decrease in the
841performance of certain code in the kernel if enabled.
842Examples of such code include the
843.Fn namei
844routine, the
845.Xr ccd 4
846driver,
847the
848.Xr ncr 4
849driver,
850and much of the networking code.
851.It Cd options MAXUPRC=integer
852Sets the
853.Em RLIMIT_NPROC
854resource limit, which specifies the maximum number of simultaneous
855processes a user is permitted to run, for process 0;
856this value is inherited by its child processes.
857It defaults to
858.Em CHILD_MAX ,
859which is currently defined to be 80.
860Setting
861.Em MAXUPRC
862to a value less than
863.Em CHILD_MAX
864is not permitted, as this would result in a violation of the semantics of
865.St -p1003.1-90 .
866.It Cd options DEFCORENAME=string
867Sets the default value of the
868.Em kern.defcorename
869sysctl variable, otherwise it is set to
870.Nm %n.core .
871See
872.Xr sysctl 8
873and
874.Xr sysctl 3
875for details.
876.It Cd options RASOPS_CLIPPING
877Enables clipping within the
878.Nm rasops
879raster-console output system.
880.Em NOTE :
881only available on architectures that use
882.Nm rasops
883for console output.
884.It Cd options RASOPS_SMALL
885Removes optimized character writing code from the
886.Nm rasops
887raster-console output system.
888.Em NOTE :
889only available on architectures that use
890.Nm rasops
891for console output.
892.El
893.Ss Networking Options
894.Bl -ohang
895.It Cd options GATEWAY
896Enables
897.Em IPFORWARDING
898(which see)
899and (on most ports) increases the size of
900.Em NMBCLUSTERS
901(which see).
902In general,
903.Em GATEWAY
904is used to indicate that a system should act as a router, and
905.Em IPFORWARDING
906is not invoked directly.
907(Note that
908.Em GATEWAY
909has no impact on protocols other than
910.Tn IP ,
911such as
912.Tn CLNP
913or
914.Tn XNS ) .
915.It Cd options IPFORWARDING=value
916If
917.Em value
918is 1 this enables IP routing behavior. If
919.Em value
920is 0 (the default), it disables it. The
921.Em GATEWAY
922option sets this to 1 automatically.
923With this option enabled, the machine will forward IP datagrams destined
924for other machines between its interfaces.
925Note that even without this option, the kernel will
926still forward some packets (such as source routed packets) -- removing
927.Em GATEWAY
928and
929.Em IPFORWARDING
930is insufficient to stop all routing through a bastion host on a
931firewall -- source routing is controlled independently.
932To turn off source routing, use
933.Em options IPFORWSRCRT=0
934(which see).
935Note that IP forwarding may be turned on and off independently of the
936setting of the
937.Em IPFORWARDING
938option through the use of the
939.Em net.inet.ip.forwarding
940sysctl variable.
941If
942.Em net.inet.ip.forwarding
943is 1, IP forwarding is on.
944See
945.Xr sysctl 8
946and
947.Xr sysctl 3
948for details.
949.It Cd options IPFORWSRCRT=value
950If
951.Em value
952is set to zero, source routing of IP datagrams is turned off.
953If
954.Em value
955is set to one (the default) or the option is absent, source routed IP
956datagrams are forwarded by the machine.
957Note that source routing of IP packets may be turned on and off
958independently of the setting of the
959.Em IPFORWSRCRT
960option through the use of the
961.Em net.inet.ip.forwsrcrt
962sysctl variable.
963If
964.Em net.inet.ip.forwsrcrt
965is 1, forwarding of source routed IP datagrams is on.
966See
967.Xr sysctl 8
968and
969.Xr sysctl 3
970for details.
971.It Cd options IFA_STATS
972Tells the kernel to maintain per-address statistics on bytes sent
973and received over (currently) internet and appletalk addresses.
974This can be a fairly expensive operation, so you probably want to
975keep this disabled.
976.It Cd options MROUTING
977Includes support for IP multicast routers.
978You certainly want
979.Em INET
980with this.
981Multicast routing is controlled by the
982.Xr mrouted 8
983daemon.
984.It Cd options INET
985Includes support for the
986.Tn TCP/IP
987protocol stack.
988You almost certainly want this.
989See
990.Xr inet 4
991for details.
992This option is currently required.
993.It Cd options INET6
994Includes support for the
995.Tn IPv6
996protocol stack.
997See
998.Xr inet6 4
999for details.
1000Unlike
1001.Em INET ,
1002.Em INET6
1003enables multicast routing code as well.
1004This option requires
1005.Em INET
1006at this moment, but it should not.
1007.It Cd options IPSEC
1008Includes support for the
1009.Tn IPsec
1010protocol.
1011See
1012.Xr ipsec 4
1013for details.
1014.Em IPSEC
1015will enable
1016secret key management part,
1017policy management part,
1018.Tn AH
1019and
1020.Tn IPComp .
1021Kernel binary will not be subject to export control in most of countries,
1022even if compiled with
1023.Em IPSEC .
1024For example, it should be okay to export it from within the United States
1025to the outside.
1026.Em INET6
1027and
1028.Em IPSEC
1029are orthogonal so you can get IPv4-only kernel with IPsec support,
1030IPv4/v6 dual support kernel without IPsec, and so forth.
1031This option requires
1032.Em INET
1033at this moment, but it should not.
1034.It Cd options IPSEC_DEBUG
1035Enables debugging code in
1036.Tn IPsec
1037stack.
1038This option assumes
1039.Em IPSEC .
1040.It Cd options IPSEC_ESP
1041Includes support for
1042.Tn IPsec
1043.Tn ESP
1044protocol.
1045See
1046.Xr ipsec 4
1047for details.
1048.Em IPSEC_ESP
1049will enable source code that is subject to export control in some countries
1050.Pq including the United States ,
1051and compiled kernel binary will be subject to certain restriction.
1052This option assumes
1053.Em IPSEC .
1054.It Cd options SUBNETSARELOCAL
1055Sets default value for net.inet.ip.subnetsarelocal variable, which
1056controls whether non-directly-connected subnets of connected networks
1057are considered "local" for purposes of choosing the MSS for a TCP
1058connection.  This is mostly present for historic reasons and
1059completely irrelevant if you enable Path MTU discovery.
1060.It Cd options HOSTZEROBROADCAST
1061Sets default value for net.inet.ip.hostzerobroadcast variable, which
1062controls whether the zeroth host address of each connected subnet is
1063also considered a broadcast address.  Default value is "1", for
1064compatibility with old systems; if this is set to zero on all hosts on
1065a subnet, you should be able to fit an extra host per subnet on the
1066".0" address.
1067.It Cd options MCLSHIFT=value
1068This option is the base-2 logarithm of the size of mbuf clusters.
1069The
1070.Bx
1071networking stack keeps network packets in a linked
1072list, or chain, of kernel buffer objects called mbufs.
1073The system provides larger mbuf clusters as an optimization for
1074large packets, instead of using long chains for large packets.
1075The mbuf cluster size,
1076or
1077.Em MCLBYTES,
1078must be a power of two, and is computed as two raised to the power
1079.Em MCLSHIFT .
1080On systems with Ethernet network adaptors,
1081.Em MCLSHIFT
1082is often set to 11, giving 2048-byte mbuf clusters, large enough to
1083hold a 1500-byte
1084.Tn Ethernet
1085frame in a single cluster.
1086Systems with network interfaces supporting larger frame sizes like
1087.Tn ATM ,
1088.Tn FDDI ,
1089or
1090.Tn HIPPI
1091may perform better with
1092.Em MCLSHIFT
1093set to 12 or 13, giving mbuf cluster sizes of 4096 and 8192 bytes,
1094respectively.
1095.It Cd options NS
1096Include support for the
1097.Tn Xerox
1098.Tn XNS
1099protocol stack.
1100See
1101.Xr ns 4
1102for details.
1103.It Cd options ISO,TPIP
1104Include support for the ubiquitous
1105.Tn OSI
1106protocol stack.
1107See
1108.Xr iso 4
1109for details.
1110.It Cd options EON
1111Include support for tunneling
1112.Tn OSI
1113protocols over
1114.Tn IP .
1115Known to be broken, or at least very fragile, and undocumented.
1116.It Cd options CCITT,LLC,HDLC
1117Include support for the
1118.Tn CCITT
1119(nee
1120.Tn ITU-TSS )
1121.Tn X.25
1122protocol stack.
1123The state of this code is currently unknown, and probably contains bugs.
1124.It Cd options NETATALK
1125Include support for the
1126.Tn AppleTalk
1127protocol stack.
1128The kernel provides provision for the
1129.Em Datagram Delivery Protocol
1130(DDP), providing SOCK_DGRAM support and
1131.Tn AppleTalk
1132routing.
1133This stack is used by the
1134.Em NETATALK
1135package, which adds support for
1136.Tn AppleTalk
1137server services via user libraries and applications.
1138.It Cd options IPNOPRIVPORTS
1139Normally, only root can bind a socket descriptor to a so-called
1140.Dq privileged
1141.Tn TCP
1142port, that is, a port number in the range 0-1023.
1143This option eliminates those checks from the kernel.
1144This can be useful if there is a desire to allow daemons without
1145privileges to bind those ports, e.g. on firewalls.
1146The security tradeoffs in doing this are subtle.
1147This option should only be used by experts.
1148.It Cd options TCP_COMPAT_42
1149.Tn TCP
1150bug compatibility with
1151.Bx 4.2 .
1152In
1153.Bx 4.2 ,
1154.Tn TCP
1155sequence numbers were 32-bit signed values.
1156Modern implementations of TCP use unsigned values.
1157This option clamps the initial sequence number to start in
1158the range 2^31 rather than the full unsigned range of 2^32.
1159Also, under
1160.Bx 4.2 ,
1161keepalive packets must contain at least one byte or else
1162the remote end would not respond.
1163.It Cd options PFIL_HOOKS
1164This option turns on the packet filter interface hooks.
1165See
1166.Xr pfil 9
1167for details.
1168.It Cd options IPFILTER_LOG
1169This option, in conjunction with
1170.Em pseudo-device ipfilter ,
1171enables logging of IP packets using ip-filter.
1172.It Cd options IPFILTER_DEFAULT_BLOCK
1173This option sets the default policy of ip-filter.
1174If it is set, ip-filter will block packets by default.
1175.It Cd options PPP_BSDCOMP
1176Enable support for BSD-compress
1177.Pq Sq bsdcomp
1178compression in ppp.
1179.It Cd options PPP_DEFLATE
1180Enable support for deflate
1181compression in ppp.
1182.It Cd options PPP_FILTER
1183This option turns on
1184.Xr pcap 3
1185based filtering for ppp connections.
1186This option is used by
1187.Xr pppd 8
1188which needs to be compiled with
1189.Em PPP_FILTER
1190defined (the current default).
1191.El
1192.Ss System V IPC Options
1193.Bl -ohang
1194.It Cd options SYSVMSG
1195Includes support for
1196.At V
1197style message queues.
1198See
1199.Xr msgctl 2 ,
1200.Xr msgget 2 ,
1201.Xr msgrcv 2 ,
1202.Xr msgsnd 2 .
1203.It Cd options SYSVSEM
1204Includes support for
1205.At V
1206style semaphores.
1207See
1208.Xr semctl 2 ,
1209.Xr semget 2 ,
1210.Xr semop 2 .
1211.It Cd options SYSVSHM
1212Includes support for
1213.At V
1214style shared memory.
1215See
1216.Xr shmat 2 ,
1217.Xr shmctl 2 ,
1218.Xr shmdt 2 ,
1219.Xr shmget 2 .
1220.It Cd options SHMMAXPGS=value
1221Sets the maximum number of
1222.At V
1223style shared memory pages that are available through the
1224.Xr shmget 2
1225system call.
1226Default value is 1024 on most ports.
1227See
1228.Pa /usr/include/machine/vmparam.h
1229for the default.
1230.El
1231.Ss VM Related Options
1232.Bl -ohang
1233.It Cd options NMBCLUSTERS=value
1234The number of mbuf clusters the kernel supports.  Mbuf clusters are
1235MCLBYTES in size (usually 2k).  This is used to compute the size of
1236the kernel VM map
1237.Em mb_map ,
1238which maps mbuf clusters.
1239Default on most ports is 256 (512 with
1240.Dq options GATEWAY
1241).
1242See
1243.Pa /usr/include/machine/param.h
1244for exact default information.
1245Increase this value if you get
1246.Dq mb_map full
1247messages.
1248.It Cd options NKMEMPAGES=value
1249.It Cd options NKMEMPAGES_MIN=value
1250.It Cd options NKMEMPAGES_MAX=value
1251Size of kernel VM map
1252.Em kmem_map ,
1253in PAGE_SIZE-sized chunks (the VM page size; this value may be read
1254from the
1255.Xr sysctl 8
1256variable
1257.Em hw.pagesize
1258).
1259This VM map is used to map the kernel malloc arena.
1260The kernel attempts to auto-size this map based on the amount of
1261physical memory in the system.  Platform-specific code may place
1262bounds on this computed size, which may be viewed with the
1263.Xr sysctl 8
1264variable
1265.Em vm.nkmempages .
1266See
1267.Pa /usr/include/machine/param.h
1268for the default upper and lower bounds.
1269The related options
1270.Sq NKMEMPAGES_MIN
1271and
1272.Sq NKMEMPAGES_MAX
1273allow the bounds to be overridden in the kernel configuration file.
1274These options are provided in the event the computed value is
1275insufficient resulting in an
1276.Dq out of space in kmem_map
1277panic.
1278.It Cd options BUFCACHE=value
1279Size of the buffer cache as a percentage of total available
1280.Tn RAM .
1281Ignored if BUFPAGES is also specified.
1282.It Cd options NBUF=value
1283.It Cd options BUFPAGES=value
1284These options set the number of pages available for the buffer cache.
1285Their default value is a machine dependent value, often calculated as
1286between 5% and 10% of total available
1287.Tn RAM .
1288.El
1289.Ss amiga-specific Options
1290.Bl -ohang
1291.It Cd options BB060STUPIDROM
1292When the bootloader (which passes
1293.Tn AmigaOS
1294.Tn ROM
1295information) claims we have a 68060
1296.Tn CPU
1297without
1298.Tn FPU ,
1299go look into the Processor Configuration Register (PCR) to find out.
1300You need this with
1301.Tn Amiga
1302.Tn ROM Ns s
1303up to (at least) V40.xxx (OS3.1),
1304when you boot via the bootblocks and don't have a DraCo.
1305.It Cd options LIMITMEM=value
1306If there, limit the part of the first memory bank used by
1307.Nx
1308to value megabytes.
1309Default is unlimited.
1310.It Cd options NKPTADD=addvalue
1311.It Cd options NKPTADDSHIFT=shiftvalue
1312The
1313.Tn CPU
1314specific
1315.Tn MMU
1316table for the kernel is pre-allocated at kernel startup time.
1317Part of it is scaled with
1318.Va maxproc ,
1319to have enough room to hold the user program
1320.Tn MMU
1321tables; the second part is a fixed amount for the kernel itself.
1322.Pp
1323The third part accounts for the size of the file buffer cache.
1324Its size is either
1325.Dv NKPTADD
1326pages (if defined) or memory size in bytes divided by two to
1327the power of
1328.Dv NKPTADDSHIFT .
1329The default is undefined
1330.Dv NKPTADD
1331and
1332.Dv NKPTADDSHIFT=24 ,
1333allowing for 16 buffers per megabyte of main memory (while
1334a GENERIC kernel allocates about half of that).
1335When you get "can't get KPT page" panics, you should increase
1336.Dv NKPTADD
1337(if defined), or decrease
1338.Dv NKPTADDSHIFT
1339by one.
1340.It Cd options P5PPC68KBOARD
1341Add special support for Phase5 mixed 68k+PPC boards. Currently, this only
1342affects rebooting from NetBSD and is only needed on 68040+PPC, not on
134368060+PPC; without this, affected machines will hang after NetBSD has shut
1344down and will only restart after a keyboard reset or a power cycle.
1345.El
1346.Ss atari-specific Options
1347.Bl -ohang
1348.It Cd options DISKLABEL_AHDI
1349Include support for AHDI (native Atari) disklabels.
1350.It Cd options DISKLABEL_NBDA
1351Include support for
1352.Nx Ns Tn /atari
1353labels.
1354If you don't set this option, it will be set automatically.
1355.Nx Ns Tn /atari
1356will not work without it.
1357.It Cd options FALCON_SCSI
1358Include support for the 5380-SCSI configuration as found on the Falcon.
1359.It Cd options RELOC_KERNEL
1360If set, the kernel will relocate itself to TT-RAM, if possible.
1361This will give you a slightly faster system.
1362.Em Beware
1363that on some TT030 systems,
1364the system will frequently dump with MMU-faults with this option enabled.
1365.It Cd options SERCONSOLE
1366Allow the modem1-port to act as the system-console.
1367A carrier should be active on modem1 during system boot to active
1368the console functionality.
1369.It Cd options TT_SCSI
1370Include support for the 5380-SCSI configuration as found on the TT030
1371and Hades.
1372.El
1373.Ss i386-specific Options
1374.Bl -ohang
1375.It Cd options I386_CPU,I486_CPU,I586_CPU,I686_CPU
1376Include support for a particular class of
1377.Tn CPU
1378.Po
1379.Tn i386 ,
1380.Tn i486 ,
1381.Tn Pentium ,
1382or
1383.Tn Pentium Pro
1384.Pc .
1385If the appropriate class for your
1386.Tn CPU
1387is not configured, the kernel will use the highest class available
1388that will work.
1389In general, using the correct
1390.Tn CPU
1391class will result in the best performance.
1392At least one of these options must be present.
1393.It Cd options CPURESET_DELAY=value
1394specifies the time (in millisecond) to wait before doing a hardware reset
1395in the last phase of a reboot. This gives the user a chance to see error
1396messages from the shutdown operations (like NFS unmounts, buffer cache flush,
1397etc ...). Setting this to 0 will disable the delay. Default is 2 seconds.
1398.It Cd options MATH_EMULATE
1399Include the floating point emulator.
1400This is useful only for
1401.Tn CPU Ns s
1402that lack an
1403internal Floating Point Unit
1404.Pq Tn FPU
1405or co-processor.
1406.It Cd options VM86
1407Include support for virtual 8086 mode, used by
1408.Tn DOS
1409emulators.
1410.It Cd options USER_LDT
1411Include i386-specific system calls for modifying the local descriptor table,
1412used by Windows emulators.
1413.It Cd options REALBASEMEM=integer
1414Overrides the base memory size passed in from the boot block.
1415(Value given in kilobytes.)
1416Use this option only if the boot block reports the size incorrectly.
1417(Note that some
1418.Tn BIOS Ns es
1419put the extended
1420.Tn BIOS
1421data area at the top of base memory, and therefore report a smaller
1422base memory size to prevent programs overwriting it.
1423This is correct behavior, and you should not use the
1424.Em REALBASEMEM
1425option to access this memory).
1426.It Cd options REALEXTMEM=integer
1427Overrides the extended memory size passed in from the boot block.
1428(Value given in kilobytes. Extended memory does not include the first megabyte.)
1429Use this option only if the boot block reports the size incorrectly.
1430.It Cd options FRENCH_KBD,FINNISH_KBD,GERMAN_KBD,NORWEGIAN_KBD
1431Select a non-US keyboard layout for the
1432.Em pccons
1433console driver.
1434.It Cd options CYRIX_CACHE_WORKS
1435Relevant only to the Cyrix 486DLC cpu. This option is used to turn on
1436the cache in hold-flush mode. It is not turned on by default because it
1437is known to have problems in certain motherboard implementations.
1438.It Cd options CYRIX_CACHE_REALLY_WORKS
1439Relevant only to the Cyrix 486DLC cpu. This option is used to turn on
1440the cache in write-back mode. It is not turned on by default because it
1441is known to have problems in certain motherboard implementations. In order
1442for this option to take effect, option
1443.Em CYRIX_CACHE_WORKS must also be specified.
1444.It Cd options PCIBIOS
1445Enable support for initializing the
1446.Tn PCI
1447bus using information from the
1448.Tn BIOS .
1449See
1450.Xr pcibios 4
1451for details.
1452.El
1453.Ss isa-specific Options
1454Options specific to
1455.Xr isa 4
1456busses.
1457.Bl -ohang
1458.It Cd options PCIC_ISA_ALLOC_IOBASE=address, PCIC_ISA_ALLOC_IOSIZE=size
1459Control the section of IO bus space used for PCMCIA bus space mapping.
1460Ideally the probed defaults are satisfactory, however in practice
1461that is not always the case. See
1462.Xr pcmcia 4
1463for details.
1464.El
1465.Ss m68k-specific Options
1466.Bl -ohang
1467.It Cd options FPU_EMULATE
1468Include support for MC68881/MC68882 emulator.
1469.It Cd options FPSP
1470Include support for 68040 floating point.
1471.It Cd options M68020,M68030,M68040,M68060
1472Include support for a specific
1473.Tn CPU ,
1474at least one (the one you are using) should be specified.
1475.It Cd options M060SP
1476Include software support for 68060.
1477This provides emulation of unimplemented
1478integer instructions as well as emulation of unimplemented floating point
1479instructions and data types and software support for floating point traps.
1480.El
1481.Ss sparc-specific Options
1482.Bl -ohang
1483.It Cd options AUDIO_DEBUG
1484Enable simple event debugging of the logging of the
1485.Xr audio 4
1486device.
1487.It Cd options BLINK
1488Enable blinking of LED.  Blink rate is full cycle every N seconds for
1489N < then current load average.  See
1490.Xr getloadavg 3 .
1491.\" .It Cd options COLORFONT_CACHE
1492.\" this is totally fucked up.. what does this do?
1493.It Cd options COUNT_SW_LEFTOVERS
1494Count how many times the sw SCSI device has left 3, 2, 1 and 0 in the
1495sw_3_leftover, sw_2_leftover, sw_1_leftover, and sw_0_leftover
1496variables accessable from
1497.Xr ddb 4 .
1498See
1499.Xr sw 4 .
1500.It Cd options DEBUG_ALIGN
1501Adds debugging messages calls when user-requested alignment fault
1502handling happens.
1503.It Cd options DEBUG_EMUL
1504Adds debugging messages calls for emulated floating point and
1505alignment fixing operations.
1506.It Cd options DEBUG_SVR4
1507Prints registers messages calls for emulated SVR4 getcontext and
1508setcontext operations.  See
1509.Em options COMPAT_SVR4 .
1510.It Cd options EXTREME_DEBUG
1511Adds debugging functions callable from
1512.Xr ddb 4 .  The debug_pagetables, test_region and print_fe_map
1513functions print information about page tables for the SUN4M
1514platforms only.
1515.It Cd options EXTREME_EXTREME_DEBUG
1516Adds extra info to
1517.Cd options EXTREME_DEBUG .
1518.It Cd options FPU_CONTEXT
1519Make
1520.Em options COMPAT_SVR4
1521getcontext and setcontext include floating point registers.
1522.It Cd options MAGMA_DEBUG
1523Adds debugging messages to the
1524.Xr magma 4
1525device.
1526.It Cd options RASTERCONS_FULLSCREEN
1527Use the entire screen for the console.
1528.It Cd options RASTERCONS_SMALLFONT
1529Use a the fixed font on the console, instead of the normal font.
1530.It Cd options SUN4
1531Support sun4 class machines.
1532.It Cd options SUN4C
1533Support sun4c class machines.
1534.It Cd options SUN4M
1535Support sun4m class machines.
1536.It Cd options SUN4_MMU3L
1537.\" XXX ???
1538Enable support for sun4 3-level MMU machines.
1539.It Cd options V9
1540Enable SPARC V9 assembler in
1541.Xr ddb 4 .
1542.El
1543.Ss x68k-specific Options
1544.Bl -ohang
1545.It Cd options EXTENDED_MEMORY
1546Include support for extended memory e.g. TS-6BE16 and 060turbo on-board.
1547.It Cd options JUPITER
1548Include support for Jupiter-X MPU accelerator
1549.It Cd options ZSCONSOLE,ZSCN_SPEED=value
1550Use the built-in serial port as the system-console.
1551Speed is specified in bps, defaults to 9600.
1552.It Cd options ITE_KERNEL_ATTR=value
1553Set the kernel message attribute for ITE.
1554Value, an integer, is a logical or of the following values:
1555.Bl -tag -width 4n -compact -offset indent
1556.It 1
1557color inversed
1558.It 2
1559underlined
1560.It 4
1561bolded
1562.El
1563.El
1564.\" The following requests should be uncommented and used where appropriate.
1565.\" .Sh FILES
1566.\" .Sh EXAMPLES
1567.Sh SEE ALSO
1568.Xr gdb 1 ,
1569.Xr ktrace 1 ,
1570.Xr quota 1 ,
1571.Xr gettimeofday 2 ,
1572.Xr i386_iopl 2 ,
1573.Xr msgctl 2 ,
1574.Xr msgget 2 ,
1575.Xr msgrcv 2 ,
1576.Xr msgsnd 2 ,
1577.Xr ntp_adjtime 2 ,
1578.Xr ntp_gettime 2 ,
1579.Xr semctl 2 ,
1580.Xr semget 2 ,
1581.Xr semop 2 ,
1582.Xr shmat 2 ,
1583.Xr shmctl 2 ,
1584.Xr shmdt 2 ,
1585.Xr shmget 2 ,
1586.Xr sysctl 3 ,
1587.Xr apm 4 ,
1588.Xr ddb 4 ,
1589.Xr inet 4 ,
1590.Xr iso 4 ,
1591.Xr lkm 4 ,
1592.Xr ns 4 ,
1593.Xr pcibios 4 ,
1594.Xr pcmcia 4 ,
1595.Xr config 8 ,
1596.Xr edquota 8 ,
1597.Xr init 8 ,
1598.Xr mount_cd9660 8 ,
1599.Xr mount_fdesc 8 ,
1600.Xr mount_kernfs 8 ,
1601.Xr mount_lfs 8 ,
1602.Xr mount_mfs 8 ,
1603.Xr mount_msdos 8 ,
1604.Xr mount_nfs 8 ,
1605.Xr mount_ntfs 8 ,
1606.Xr mount_null 8 ,
1607.Xr mount_portal 8 ,
1608.Xr mount_procfs 8 ,
1609.Xr mount_umap 8 ,
1610.Xr mount_union 8 ,
1611.Xr mrouted 8 ,
1612.Xr newlfs 8 ,
1613.Xr quotaon 8 ,
1614.Xr rpc.rquotad 8 ,
1615.Xr sysctl 8 ,
1616.Xr ntpd 8
1617.Sh HISTORY
1618The
1619.Nm
1620man page first appeared in
1621.Nx 1.3 .
1622.Sh BUGS
1623The
1624.Em INET
1625and the
1626.Em VNODEPAGER
1627options should not be required.
1628The
1629.Em EON
1630option should be a pseudo-device, and is also very fragile.
1631
1632