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