xref: /netbsd-src/share/man/man4/options.4 (revision 4472dbe5e3bd91ef2540bada7a7ca7384627ff9b)
1.\"	$NetBSD: options.4,v 1.108 2000/05/31 22:26:58 gmcgarry 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 .
1054To use this option, you will need have a symbolic link from
1055.Li src/crypto-intl
1056to
1057.Li cryptosrc-intl/crypto-intl
1058(or from
1059.Li src/crypto-us
1060to
1061.Li cryptosrc-us/crypto-us
1062if you are in the US).
1063.It Cd options SUBNETSARELOCAL
1064Sets default value for net.inet.ip.subnetsarelocal variable, which
1065controls whether non-directly-connected subnets of connected networks
1066are considered "local" for purposes of choosing the MSS for a TCP
1067connection.  This is mostly present for historic reasons and
1068completely irrelevant if you enable Path MTU discovery.
1069.It Cd options HOSTZEROBROADCAST
1070Sets default value for net.inet.ip.hostzerobroadcast variable, which
1071controls whether the zeroth host address of each connected subnet is
1072also considered a broadcast address.  Default value is "1", for
1073compatibility with old systems; if this is set to zero on all hosts on
1074a subnet, you should be able to fit an extra host per subnet on the
1075".0" address.
1076.It Cd options MCLSHIFT=value
1077This option is the base-2 logarithm of the size of mbuf clusters.
1078The
1079.Bx
1080networking stack keeps network packets in a linked
1081list, or chain, of kernel buffer objects called mbufs.
1082The system provides larger mbuf clusters as an optimization for
1083large packets, instead of using long chains for large packets.
1084The mbuf cluster size,
1085or
1086.Em MCLBYTES,
1087must be a power of two, and is computed as two raised to the power
1088.Em MCLSHIFT .
1089On systems with Ethernet network adaptors,
1090.Em MCLSHIFT
1091is often set to 11, giving 2048-byte mbuf clusters, large enough to
1092hold a 1500-byte
1093.Tn Ethernet
1094frame in a single cluster.
1095Systems with network interfaces supporting larger frame sizes like
1096.Tn ATM ,
1097.Tn FDDI ,
1098or
1099.Tn HIPPI
1100may perform better with
1101.Em MCLSHIFT
1102set to 12 or 13, giving mbuf cluster sizes of 4096 and 8192 bytes,
1103respectively.
1104.It Cd options NS
1105Include support for the
1106.Tn Xerox
1107.Tn XNS
1108protocol stack.
1109See
1110.Xr ns 4
1111for details.
1112.It Cd options ISO,TPIP
1113Include support for the ubiquitous
1114.Tn OSI
1115protocol stack.
1116See
1117.Xr iso 4
1118for details.
1119.It Cd options EON
1120Include support for tunneling
1121.Tn OSI
1122protocols over
1123.Tn IP .
1124.It Cd options CCITT,LLC,HDLC
1125Include support for the
1126.Tn CCITT
1127(nee
1128.Tn ITU-TSS )
1129.Tn X.25
1130protocol stack.
1131The state of this code is currently unknown, and probably contains bugs.
1132.It Cd options NETATALK
1133Include support for the
1134.Tn AppleTalk
1135protocol stack.
1136The kernel provides provision for the
1137.Em Datagram Delivery Protocol
1138(DDP), providing SOCK_DGRAM support and
1139.Tn AppleTalk
1140routing.
1141This stack is used by the
1142.Em NETATALK
1143package, which adds support for
1144.Tn AppleTalk
1145server services via user libraries and applications.
1146.It Cd options IPNOPRIVPORTS
1147Normally, only root can bind a socket descriptor to a so-called
1148.Dq privileged
1149.Tn TCP
1150port, that is, a port number in the range 0-1023.
1151This option eliminates those checks from the kernel.
1152This can be useful if there is a desire to allow daemons without
1153privileges to bind those ports, e.g. on firewalls.
1154The security tradeoffs in doing this are subtle.
1155This option should only be used by experts.
1156.It Cd options TCP_COMPAT_42
1157.Tn TCP
1158bug compatibility with
1159.Bx 4.2 .
1160In
1161.Bx 4.2 ,
1162.Tn TCP
1163sequence numbers were 32-bit signed values.
1164Modern implementations of TCP use unsigned values.
1165This option clamps the initial sequence number to start in
1166the range 2^31 rather than the full unsigned range of 2^32.
1167Also, under
1168.Bx 4.2 ,
1169keepalive packets must contain at least one byte or else
1170the remote end would not respond.
1171.It Cd options PFIL_HOOKS
1172This option turns on the packet filter interface hooks.
1173See
1174.Xr pfil 9
1175for details.
1176.It Cd options IPFILTER_LOG
1177This option, in conjunction with
1178.Em pseudo-device ipfilter ,
1179enables logging of IP packets using ip-filter.
1180.It Cd options IPFILTER_DEFAULT_BLOCK
1181This option sets the default policy of ip-filter.
1182If it is set, ip-filter will block packets by default.
1183.It Cd options PPP_BSDCOMP
1184Enable support for BSD-compress
1185.Pq Sq bsdcomp
1186compression in ppp.
1187.It Cd options PPP_DEFLATE
1188Enable support for deflate
1189compression in ppp.
1190.It Cd options PPP_FILTER
1191This option turns on
1192.Xr pcap 3
1193based filtering for ppp connections.
1194This option is used by
1195.Xr pppd 8
1196which needs to be compiled with
1197.Em PPP_FILTER
1198defined (the current default).
1199.El
1200.Ss System V IPC Options
1201.Bl -ohang
1202.It Cd options SYSVMSG
1203Includes support for
1204.At V
1205style message queues.
1206See
1207.Xr msgctl 2 ,
1208.Xr msgget 2 ,
1209.Xr msgrcv 2 ,
1210.Xr msgsnd 2 .
1211.It Cd options SYSVSEM
1212Includes support for
1213.At V
1214style semaphores.
1215See
1216.Xr semctl 2 ,
1217.Xr semget 2 ,
1218.Xr semop 2 .
1219.It Cd options SYSVSHM
1220Includes support for
1221.At V
1222style shared memory.
1223See
1224.Xr shmat 2 ,
1225.Xr shmctl 2 ,
1226.Xr shmdt 2 ,
1227.Xr shmget 2 .
1228.It Cd options SHMMAXPGS=value
1229Sets the maximum number of
1230.At V
1231style shared memory pages that are available through the
1232.Xr shmget 2
1233system call.
1234Default value is 1024 on most ports.
1235See
1236.Pa /usr/include/machine/vmparam.h
1237for the default.
1238.El
1239.Ss VM Related Options
1240.Bl -ohang
1241.It Cd options NMBCLUSTERS=value
1242The number of mbuf clusters the kernel supports.  Mbuf clusters are
1243MCLBYTES in size (usually 2k).  This is used to compute the size of
1244the kernel VM map
1245.Em mb_map ,
1246which maps mbuf clusters.
1247Default on most ports is 256 (512 with
1248.Dq options GATEWAY
1249).
1250See
1251.Pa /usr/include/machine/param.h
1252for exact default information.
1253Increase this value if you get
1254.Dq mb_map full
1255messages.
1256.It Cd options NKMEMPAGES=value
1257.It Cd options NKMEMPAGES_MIN=value
1258.It Cd options NKMEMPAGES_MAX=value
1259Size of kernel VM map
1260.Em kmem_map ,
1261in PAGE_SIZE-sized chunks (the VM page size; this value may be read
1262from the
1263.Xr sysctl 8
1264variable
1265.Em hw.pagesize
1266).
1267This VM map is used to map the kernel malloc arena.
1268The kernel attempts to auto-size this map based on the amount of
1269physical memory in the system.  Platform-specific code may place
1270bounds on this computed size, which may be viewed with the
1271.Xr sysctl 8
1272variable
1273.Em vm.nkmempages .
1274See
1275.Pa /usr/include/machine/param.h
1276for the default upper and lower bounds.
1277The related options
1278.Sq NKMEMPAGES_MIN
1279and
1280.Sq NKMEMPAGES_MAX
1281allow the bounds to be overridden in the kernel configuration file.
1282These options are provided in the event the computed value is
1283insufficient resulting in an
1284.Dq out of space in kmem_map
1285panic.
1286.It Cd options BUFCACHE=value
1287Size of the buffer cache as a percentage of total available
1288.Tn RAM .
1289Ignored if BUFPAGES is also specified.
1290.It Cd options NBUF=value
1291.It Cd options BUFPAGES=value
1292These options set the number of pages available for the buffer cache.
1293Their default value is a machine dependent value, often calculated as
1294between 5% and 10% of total available
1295.Tn RAM .
1296.El
1297.Ss amiga-specific Options
1298.Bl -ohang
1299.It Cd options BB060STUPIDROM
1300When the bootloader (which passes
1301.Tn AmigaOS
1302.Tn ROM
1303information) claims we have a 68060
1304.Tn CPU
1305without
1306.Tn FPU ,
1307go look into the Processor Configuration Register (PCR) to find out.
1308You need this with
1309.Tn Amiga
1310.Tn ROM Ns s
1311up to (at least) V40.xxx (OS3.1),
1312when you boot via the bootblocks and don't have a DraCo.
1313.It Cd options LIMITMEM=value
1314If there, limit the part of the first memory bank used by
1315.Nx
1316to value megabytes.
1317Default is unlimited.
1318.It Cd options NKPTADD=addvalue
1319.It Cd options NKPTADDSHIFT=shiftvalue
1320The
1321.Tn CPU
1322specific
1323.Tn MMU
1324table for the kernel is pre-allocated at kernel startup time.
1325Part of it is scaled with
1326.Va maxproc ,
1327to have enough room to hold the user program
1328.Tn MMU
1329tables; the second part is a fixed amount for the kernel itself.
1330.Pp
1331The third part accounts for the size of the file buffer cache.
1332Its size is either
1333.Dv NKPTADD
1334pages (if defined) or memory size in bytes divided by two to
1335the power of
1336.Dv NKPTADDSHIFT .
1337The default is undefined
1338.Dv NKPTADD
1339and
1340.Dv NKPTADDSHIFT=24 ,
1341allowing for 16 buffers per megabyte of main memory (while
1342a GENERIC kernel allocates about half of that).
1343When you get "can't get KPT page" panics, you should increase
1344.Dv NKPTADD
1345(if defined), or decrease
1346.Dv NKPTADDSHIFT
1347by one.
1348.It Cd options P5PPC68KBOARD
1349Add special support for Phase5 mixed 68k+PPC boards. Currently, this only
1350affects rebooting from NetBSD and is only needed on 68040+PPC, not on
135168060+PPC; without this, affected machines will hang after NetBSD has shut
1352down and will only restart after a keyboard reset or a power cycle.
1353.El
1354.Ss atari-specific Options
1355.Bl -ohang
1356.It Cd options DISKLABEL_AHDI
1357Include support for AHDI (native Atari) disklabels.
1358.It Cd options DISKLABEL_NBDA
1359Include support for
1360.Nx Ns Tn /atari
1361labels.
1362If you don't set this option, it will be set automatically.
1363.Nx Ns Tn /atari
1364will not work without it.
1365.It Cd options FALCON_SCSI
1366Include support for the 5380-SCSI configuration as found on the Falcon.
1367.It Cd options RELOC_KERNEL
1368If set, the kernel will relocate itself to TT-RAM, if possible.
1369This will give you a slightly faster system.
1370.Em Beware
1371that on some TT030 systems,
1372the system will frequently dump with MMU-faults with this option enabled.
1373.It Cd options SERCONSOLE
1374Allow the modem1-port to act as the system-console.
1375A carrier should be active on modem1 during system boot to active
1376the console functionality.
1377.It Cd options TT_SCSI
1378Include support for the 5380-SCSI configuration as found on the TT030
1379and Hades.
1380.El
1381.Ss i386-specific Options
1382.Bl -ohang
1383.It Cd options I386_CPU,I486_CPU,I586_CPU,I686_CPU
1384Include support for a particular class of
1385.Tn CPU
1386.Po
1387.Tn i386 ,
1388.Tn i486 ,
1389.Tn Pentium ,
1390or
1391.Tn Pentium Pro
1392.Pc .
1393If the appropriate class for your
1394.Tn CPU
1395is not configured, the kernel will use the highest class available
1396that will work.
1397In general, using the correct
1398.Tn CPU
1399class will result in the best performance.
1400At least one of these options must be present.
1401.It Cd options CPURESET_DELAY=value
1402specifies the time (in millisecond) to wait before doing a hardware reset
1403in the last phase of a reboot. This gives the user a chance to see error
1404messages from the shutdown operations (like NFS unmounts, buffer cache flush,
1405etc ...). Setting this to 0 will disable the delay. Default is 2 seconds.
1406.It Cd options MATH_EMULATE
1407Include the floating point emulator.
1408This is useful only for
1409.Tn CPU Ns s
1410that lack an
1411internal Floating Point Unit
1412.Pq Tn FPU
1413or co-processor.
1414.It Cd options VM86
1415Include support for virtual 8086 mode, used by
1416.Tn DOS
1417emulators.
1418.It Cd options USER_LDT
1419Include i386-specific system calls for modifying the local descriptor table,
1420used by Windows emulators.
1421.It Cd options REALBASEMEM=integer
1422Overrides the base memory size passed in from the boot block.
1423(Value given in kilobytes.)
1424Use this option only if the boot block reports the size incorrectly.
1425(Note that some
1426.Tn BIOS Ns es
1427put the extended
1428.Tn BIOS
1429data area at the top of base memory, and therefore report a smaller
1430base memory size to prevent programs overwriting it.
1431This is correct behavior, and you should not use the
1432.Em REALBASEMEM
1433option to access this memory).
1434.It Cd options REALEXTMEM=integer
1435Overrides the extended memory size passed in from the boot block.
1436(Value given in kilobytes. Extended memory does not include the first megabyte.)
1437Use this option only if the boot block reports the size incorrectly.
1438.It Cd options FRENCH_KBD,FINNISH_KBD,GERMAN_KBD,NORWEGIAN_KBD
1439Select a non-US keyboard layout for the
1440.Em pccons
1441console driver.
1442.It Cd options CYRIX_CACHE_WORKS
1443Relevant only to the Cyrix 486DLC cpu. This option is used to turn on
1444the cache in hold-flush mode. It is not turned on by default because it
1445is known to have problems in certain motherboard implementations.
1446.It Cd options CYRIX_CACHE_REALLY_WORKS
1447Relevant only to the Cyrix 486DLC cpu. This option is used to turn on
1448the cache in write-back mode. It is not turned on by default because it
1449is known to have problems in certain motherboard implementations. In order
1450for this option to take effect, option
1451.Em CYRIX_CACHE_WORKS must also be specified.
1452.It Cd options PCIBIOS
1453Enable support for initializing the
1454.Tn PCI
1455bus using information from the
1456.Tn BIOS .
1457See
1458.Xr pcibios 4
1459for details.
1460.El
1461.Ss isa-specific Options
1462Options specific to
1463.Xr isa 4
1464busses.
1465.Bl -ohang
1466.It Cd options PCIC_ISA_ALLOC_IOBASE=address, PCIC_ISA_ALLOC_IOSIZE=size
1467Control the section of IO bus space used for PCMCIA bus space mapping.
1468Ideally the probed defaults are satisfactory, however in practice
1469that is not always the case. See
1470.Xr pcmcia 4
1471for details.
1472.El
1473.Ss m68k-specific Options
1474.Bl -ohang
1475.It Cd options FPU_EMULATE
1476Include support for MC68881/MC68882 emulator.
1477.It Cd options FPSP
1478Include support for 68040 floating point.
1479.It Cd options M68020,M68030,M68040,M68060
1480Include support for a specific
1481.Tn CPU ,
1482at least one (the one you are using) should be specified.
1483.It Cd options M060SP
1484Include software support for 68060.
1485This provides emulation of unimplemented
1486integer instructions as well as emulation of unimplemented floating point
1487instructions and data types and software support for floating point traps.
1488.El
1489.Ss sparc-specific Options
1490.Bl -ohang
1491.It Cd options AUDIO_DEBUG
1492Enable simple event debugging of the logging of the
1493.Xr audio 4
1494device.
1495.It Cd options BLINK
1496Enable blinking of LED.  Blink rate is full cycle every N seconds for
1497N < then current load average.  See
1498.Xr getloadavg 3 .
1499.\" .It Cd options COLORFONT_CACHE
1500.\" this is totally fucked up.. what does this do?
1501.It Cd options COUNT_SW_LEFTOVERS
1502Count how many times the sw SCSI device has left 3, 2, 1 and 0 in the
1503sw_3_leftover, sw_2_leftover, sw_1_leftover, and sw_0_leftover
1504variables accessable from
1505.Xr ddb 4 .
1506See
1507.Xr sw 4 .
1508.It Cd options DEBUG_ALIGN
1509Adds debugging messages calls when user-requested alignment fault
1510handling happens.
1511.It Cd options DEBUG_EMUL
1512Adds debugging messages calls for emulated floating point and
1513alignment fixing operations.
1514.It Cd options DEBUG_SVR4
1515Prints registers messages calls for emulated SVR4 getcontext and
1516setcontext operations.  See
1517.Em options COMPAT_SVR4 .
1518.It Cd options EXTREME_DEBUG
1519Adds debugging functions callable from
1520.Xr ddb 4 .  The debug_pagetables, test_region and print_fe_map
1521functions print information about page tables for the SUN4M
1522platforms only.
1523.It Cd options EXTREME_EXTREME_DEBUG
1524Adds extra info to
1525.Cd options EXTREME_DEBUG .
1526.It Cd options FPU_CONTEXT
1527Make
1528.Em options COMPAT_SVR4
1529getcontext and setcontext include floating point registers.
1530.It Cd options MAGMA_DEBUG
1531Adds debugging messages to the
1532.Xr magma 4
1533device.
1534.It Cd options RASTERCONS_FULLSCREEN
1535Use the entire screen for the console.
1536.It Cd options RASTERCONS_SMALLFONT
1537Use a the fixed font on the console, instead of the normal font.
1538.It Cd options SUN4
1539Support sun4 class machines.
1540.It Cd options SUN4C
1541Support sun4c class machines.
1542.It Cd options SUN4M
1543Support sun4m class machines.
1544.It Cd options SUN4_MMU3L
1545.\" XXX ???
1546Enable support for sun4 3-level MMU machines.
1547.It Cd options V9
1548Enable SPARC V9 assembler in
1549.Xr ddb 4 .
1550.El
1551.Ss x68k-specific Options
1552.Bl -ohang
1553.It Cd options EXTENDED_MEMORY
1554Include support for extended memory e.g. TS-6BE16 and 060turbo on-board.
1555.It Cd options JUPITER
1556Include support for Jupiter-X MPU accelerator
1557.It Cd options ZSCONSOLE,ZSCN_SPEED=value
1558Use the built-in serial port as the system-console.
1559Speed is specified in bps, defaults to 9600.
1560.It Cd options ITE_KERNEL_ATTR=value
1561Set the kernel message attribute for ITE.
1562Value, an integer, is a logical or of the following values:
1563.Bl -tag -width 4n -compact -offset indent
1564.It 1
1565color inversed
1566.It 2
1567underlined
1568.It 4
1569bolded
1570.El
1571.El
1572.\" The following requests should be uncommented and used where appropriate.
1573.\" .Sh FILES
1574.\" .Sh EXAMPLES
1575.Sh SEE ALSO
1576.Xr gdb 1 ,
1577.Xr ktrace 1 ,
1578.Xr quota 1 ,
1579.Xr gettimeofday 2 ,
1580.Xr i386_iopl 2 ,
1581.Xr msgctl 2 ,
1582.Xr msgget 2 ,
1583.Xr msgrcv 2 ,
1584.Xr msgsnd 2 ,
1585.Xr ntp_adjtime 2 ,
1586.Xr ntp_gettime 2 ,
1587.Xr semctl 2 ,
1588.Xr semget 2 ,
1589.Xr semop 2 ,
1590.Xr shmat 2 ,
1591.Xr shmctl 2 ,
1592.Xr shmdt 2 ,
1593.Xr shmget 2 ,
1594.Xr sysctl 3 ,
1595.Xr apm 4 ,
1596.Xr ddb 4 ,
1597.Xr inet 4 ,
1598.Xr iso 4 ,
1599.Xr lkm 4 ,
1600.Xr ns 4 ,
1601.Xr pcibios 4 ,
1602.Xr pcmcia 4 ,
1603.Xr config 8 ,
1604.Xr edquota 8 ,
1605.Xr init 8 ,
1606.Xr mount_cd9660 8 ,
1607.Xr mount_fdesc 8 ,
1608.Xr mount_kernfs 8 ,
1609.Xr mount_lfs 8 ,
1610.Xr mount_mfs 8 ,
1611.Xr mount_msdos 8 ,
1612.Xr mount_nfs 8 ,
1613.Xr mount_ntfs 8 ,
1614.Xr mount_null 8 ,
1615.Xr mount_portal 8 ,
1616.Xr mount_procfs 8 ,
1617.Xr mount_umap 8 ,
1618.Xr mount_union 8 ,
1619.Xr mrouted 8 ,
1620.Xr newlfs 8 ,
1621.Xr quotaon 8 ,
1622.Xr rpc.rquotad 8 ,
1623.Xr sysctl 8 ,
1624.Xr ntpd 8
1625.Sh HISTORY
1626The
1627.Nm
1628man page first appeared in
1629.Nx 1.3 .
1630.Sh BUGS
1631The
1632.Em INET
1633and the
1634.Em VNODEPAGER
1635options should not be required.
1636