1.\" $OpenBSD: options.4,v 1.193 2009/08/09 23:04:47 miod Exp $ 2.\" $NetBSD: options.4,v 1.21 1997/06/25 03:13:00 thorpej Exp $ 3.\" 4.\" Copyright (c) 1998 Theo de Raadt 5.\" Copyright (c) 1998 Todd Miller 6.\" Copyright (c) 1998 Gene Skonicki 7.\" Copyright (c) 1996 8.\" Perry E. Metzger. All rights reserved. 9.\" 10.\" Redistribution and use in source and binary forms, with or without 11.\" modification, are permitted provided that the following conditions 12.\" are met: 13.\" 1. Redistributions of source code must retain the above copyright 14.\" notice, this list of conditions and the following disclaimer. 15.\" 2. Redistributions in binary form must reproduce the above copyright 16.\" notice, this list of conditions and the following disclaimer in the 17.\" documentation and/or other materials provided with the distribution. 18.\" 3. All advertising materials mentioning features or use of this software 19.\" must display the following acknowledgment: 20.\" This product includes software developed for the NetBSD Project 21.\" by Perry E. Metzger. 22.\" 4. The name of the author may not be used to endorse or promote products 23.\" derived from this software without specific prior written permission. 24.\" 25.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 26.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 27.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 28.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 29.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 30.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 31.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 32.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 35.\" 36.\" 37.Dd $Mdocdate: August 9 2009 $ 38.Dt OPTIONS 4 39.Os 40.Sh NAME 41.Nm options 42.Nd kernel configuration options 43.Sh SYNOPSIS 44.Cd option ... 45.Sh DESCRIPTION 46This manual page describes a number of miscellaneous kernel 47configuration options that may be specified in a kernel config file. 48See 49.Xr config 8 50for information on how to configure and build kernels. 51.Em Note: 52options are passed to the compile process as 53.Fl D 54flags to the C compiler. 55.Sh COMPATIBILITY OPTIONS 56.Bl -ohang 57.It Cd option COMPAT_43 58Use of this option is discouraged. 59It enables compatibility with 60.Bx 4.3 . 61It adds an old syscall for 62.Fn lseek 63as well as ioctls for 64.Dv TIOCGETP 65and 66.Dv TIOCSETP . 67The return values for the 68.Xr getpid 2 , 69.Xr getgid 2 , 70and 71.Xr getuid 2 72system calls are modified as well, to return the parent's PID and UID as well 73as the current process's. 74It also enables the deprecated 75.Dv NTTYDISC 76terminal line discipline. 77It provides backwards compatibility with the 78.Dq old 79SIOC[GS]IF{ADDR,DSTADDR,BRDADDR,NETMASK} interface ioctls, including 80binary compatibility for code written before the introduction of the 81.Li sa_len 82field in sockaddrs. 83It also enables support for some older pre 84.Bx 4.4 85socket calls. 86.It Cd option COMPAT_AOUT 87On those ELF architectures that require it, this enables 88full compatibility with old a.out binaries, by allowing the 89a.out dynamic linking system to reside under 90.Pa /emul/a.out . 91This option is available on the i386 architecture. 92See 93.Xr compat_aout 8 . 94.It Cd option COMPAT_BSDOS 95On those architectures that support it, this enables binary 96compatibility with 97.Em BSD/OS 98applications. 99This option is supported on the i386 architecture. 100See 101.Xr compat_bsdos 8 . 102It also requires the use of 103.Cm option COMPAT_43 104for proper operation. 105.It Cd option COMPAT_FREEBSD 106On those architectures that support it, this enables binary 107compatibility with 108.Em FreeBSD 109applications built for the same architecture. 110This option is available on the i386 architecture. 111See 112.Xr compat_freebsd 8 . 113.It Cd option COMPAT_HPUX 114On those architectures that support it, this enables binary 115compatibility with 116.Em HP-UX 117applications built for the same architecture. 118This option is available on some m68k and hppa architectures. 119See 120.Xr compat_hpux 8 . 121.It Cd option COMPAT_IBCS2 122On those architectures that support it, this enables binary 123compatibility with 124.Em iBCS2 125applications built for the same architecture. 126This option is available on the i386 architecture. 127See 128.Xr compat_ibcs2 8 . 129.It Cd option COMPAT_LINUX 130On those architectures that support it, this enables binary 131compatibility with 132.Em Linux 133ELF and a.out 134applications built for the same architecture. 135This option is supported on the i386 architecture. 136See 137.Xr compat_linux 8 . 138.It Cd option COMPAT_O43 139Enables compatibility with 140.Ox 4.3 . 141This makes it possible to run binaries that use old versions of the 142.Xr statfs 2 , 143.Xr fstatfs 2 , 144and 145.Xr getfsstat 2 146system calls which were replaced in 147.Ox 4.4 148when struct stat was expanded. 149.It Cd option COMPAT_OSF1 150On those architectures that support it, this enables binary 151compatibility with 152.Em Digital UNIX 153(formerly 154.Em OSF/1 ) 155applications built for the same architecture. 156This option is available on the alpha architecture. 157See 158.Xr compat_osf1 8 . 159.It Cd option COMPAT_SUNOS 160On those architectures that support it, this enables binary 161compatibility with 162.Em SunOS 4.x 163applications built for the same architecture. 164This option is supported on sparc and all m68k architectures. 165See 166.Xr compat_sunos 8 . 167.It Cd option COMPAT_SVR4 168On those architectures that support it, this enables binary 169compatibility with 170.At V.4 171binaries built for the same architecture. 172This currently includes the sparc and i386. 173Possibly the most widely known operating system 174based on this binary architecture is Sun's Solaris 2.x. 175See 176.Xr compat_svr4 8 . 177.It Cd option COMPAT_ULTRIX 178On those architectures that support it, this enables binary 179compatibility with Ultrix applications built for the same architecture. 180This option is available on the vax architecture. 181See 182.Xr compat_ultrix 8 . 183.El 184.Sh DEBUGGING OPTIONS 185.Bl -ohang 186.It Cd makeoptions DEBUG="-g" 187The 188.Fl g 189flag causes 190.Pa bsd.gdb 191to be built in addition to 192.Pa bsd . 193.Pa bsd.gdb 194is useful for debugging kernels and their crash dumps with gdb. 195A crash dump can be debugged by starting 196.Xr gdb 1 197with the kernel name 198.Pf ( Pa bsd.gdb ) 199as an argument (no core file) and then use the 200.Xr gdb 1 201command 202.Dq target kvm COREFILE . 203.It Cd makeoptions PROF="-pg" 204The 205.Fl pg 206flag causes the kernel to be compiled with support for profiling. 207The 208.Cm option GPROF 209is required for the kernel compile to succeed. 210.It Cd option ACCOUNTING 211Adds support for the 212.Xr acct 2 213system call. 214.It Cd option DDB 215Compiles in a kernel debugger for diagnosing kernel problems. 216See 217.Xr ddb 4 218for details. 219.It Cd option DDB_SAFE_CONSOLE 220Allows a break into the kernel debugger during boot. 221Useful when debugging problems that can cause init(8) to fail. 222.It Cd option DDB_STRUCT 223Compiles in symbolic information about the various data structures used by the 224kernel, for use within the kernel debugger. 225This option is currently not supported on alpha, m68k, m88k and vax based 226platforms. 227.It Cd option DEBUG 228Turns on miscellaneous kernel debugging. 229Since options are turned into preprocessor defines (see above), 230.Cm option DEBUG 231is equivalent to doing a 232.Em #define DEBUG 233throughout the kernel. 234Much of the kernel has 235.Em #ifdef DEBUG 236conditional debugging code. 237Note that many parts of the kernel (typically device drivers) include their own 238.Em #ifdef XXX_DEBUG 239conditionals instead. 240This option also turns on certain other options, notably 241.Cm option KMEMSTATS . 242.It Cd option DIAGNOSTIC 243Adds code to the kernel that does internal consistency checks. 244This code will cause the kernel to panic if corruption of internal data 245structures is detected. 246.It Cd option GPROF 247Adds code to the kernel for kernel profiling with 248.Xr kgmon 8 . 249.It Cd option KGDB 250Compiles in a remote kernel debugger stub for diagnosing kernel problems 251using the 252.Dq remote target 253feature of gdb. 254See 255.Xr kgdb 7 256for details. 257.Em Note: 258not available on all architectures. 259.It Cd option KTRACE 260Adds hooks for the system call tracing facility, which allows users to 261watch the system call invocation behavior of processes. 262See 263.Xr ktrace 1 264for details. 265.It Cd option NO_PROPOLICE 266Do not compile the kernel with the ProPolice stack protection. 267See 268.Xr gcc-local 1 269for more information about ProPolice. 270.It Cd option PTRACE 271Adds hooks for the process tracing facility, allowing a process to 272control and observe another process. 273See 274.Xr ptrace 2 275for details. 276.It Cd option RAIDDEBUG 277Be verbose on what RAIDframe does. 278See 279.Xr raid 4 280for details. 281.It Cd option SMALL_KERNEL 282Removes some features and some optimizations from the kernel to reduce the 283size of the resulting kernel binary. 284This option is used on some installation media and should not be used 285for general purpose kernels. 286.It Cd option VFSDEBUG 287Turns on debugging for the Virtual File System interface. 288See 289.Xr vfs 9 290for details. 291.El 292.Sh FILE SYSTEMS 293.Bl -ohang 294.It Cd option CD9660 295Includes code for the ISO 9660 + Rock Ridge file system, which is the 296standard file system used on many CD-ROMs. 297It also supports Joliet extensions. 298See 299.Xr mount_cd9660 8 300for details. 301.It Cd option EXT2FS 302Includes code implementing the Second Extended File System 303.Em ( EXT2FS ) . 304This is the most commonly used file system on the Linux operating system, 305and is provided here for compatibility. 306Some specific features of 307.Em EXT2FS 308like the "behavior on errors" are not implemented. 309This file system 310can't be used with 311.Li uid_t 312or 313.Li gid_t 314values greater than 65535. 315Also, the filesystem will not function correctly on architectures with 316differing byte-orders. 317That is, a big-endian machine will not be able to read an 318ext2fs filesystem created on an i386 or other little-endian machine. 319See 320.Xr mount_ext2fs 8 321for details. 322.It Cd option FFS 323Includes code implementing the Berkeley Fast File System 324.Em ( FFS ) . 325Most machines need this if they are not running diskless. 326.It Cd option FFS2 327Includes code implementing the enhanced Fast File System 328.Em ( FFS2 ) . 329.It Cd option MFS 330Include the memory file system 331.Em ( MFS ) . 332This file system stores files in swappable memory, and produces 333notable performance improvements when it is used as the file store 334for 335.Pa /tmp 336or similar mount points. 337See 338.Xr mount_mfs 8 339for details. 340.It Cd option MSDOSFS 341Includes support for the MS-DOS FAT file system. 342The kernel also implements the Windows 95 343extensions which permit the use of longer, mixed-case file names. 344See 345.Xr mount_msdos 8 346and 347.Xr fsck_msdos 8 348for details. 349.It Cd option NFSCLIENT 350Include the client side of the 351.Em NFS 352(Network File System) remote file sharing protocol. 353Although the bulk of the code implementing 354.Em NFS 355is kernel based, several user level daemons are needed for it to work. 356See 357.Xr mount_nfs 8 358for details on NFS. 359.It Cd option NTFS 360Includes support for reading NTFS file systems. 361Experimental and read only. 362See 363.Xr mount_ntfs 8 364for details. 365.It Cd option PORTAL 366Includes the (experimental) portal filesystem. 367This permits interesting tricks like opening TCP sockets by opening files in 368the file system. 369The portal file system is conventionally mounted on 370.Pa /p 371and is partially implemented by a special daemon. 372See 373.Xr mount_portal 8 374for details. 375.It Cd option PROCFS 376Includes code for a special file system (conventionally mounted on 377.Pa /proc ) 378in which the process space becomes visible in the file system. 379Among other things, the memory spaces of processes running on the system are 380visible as files, and signals may be sent to processes by writing to 381.Pa ctl 382files in the procfs namespace. 383See 384.Xr mount_procfs 8 385for details. 386.It Cd option UDF 387Includes code for the UDF file systems typically found on DVD discs. 388See 389.Xr mount_udf 8 390for details. 391.It Cd option NNPFS 392Includes the kernel support for the AFS-compatible Arla filesystem. 393Since the xfs interface is simple and generic it can be used for other 394filesystems as well. 395See 396.Xr mount_nnpfs 8 397for details. 398.El 399.Sh FILE SYSTEM OPTIONS 400.Bl -ohang 401.It Cd option BUFCACHEPERCENT= Ns Ar integer 402Percentage of RAM to use as a file system buffer. 403It defaults to 5. 404.It Cd option EXT2FS_SYSTEM_FLAGS 405This option changes the behavior of the APPEND and IMMUTABLE flags 406for a file on an 407.Em EXT2FS 408filesystem. 409Without this option, the superuser or owner of the file can set and clear them. 410With this option, only the superuser can set them, and they can't be cleared 411if the securelevel is greater than 0. 412See also 413.Xr chflags 1 . 414.It Cd option FFS_SOFTUPDATES 415Enables a scheme that uses partial ordering of buffer cache operations 416to allow metadata updates in FFS to happen asynchronously, increasing write 417performance significantly. 418Normally, the FFS filesystem writes metadata updates synchronously which exacts 419a performance penalty in favor of filesystem integrity. 420With soft updates, the performance of asynchronous writes is gained while 421retaining the safety of synchronous metadata updates. 422.Pp 423Soft updates must be enabled on a per-filesystem basis. 424See 425.Xr mount 8 426for details. 427.Pp 428Processors with a small kernel address space, such as the sun4 and sun4c, do 429not have enough kernel memory to support soft updates. 430Attempts to use this option with these CPUs will cause a kernel hang or panic 431after a short period of use as the kernel will quickly run out of memory. 432This is not related to the amount of physical memory present in the machine -- 433it is a limitation of the CPU architecture itself. 434.It Cd option FIFO 435Adds support for 436.At V 437style FIFOs (i.e., 438.Dq named pipes ) . 439This option is recommended in almost all cases as many programs use these. 440.It Cd option NFSSERVER 441Include the server side of the 442.Em NFS 443(Network File System) remote file sharing protocol. 444Although the bulk of the code implementing 445.Em NFS 446is kernel based, several user level daemons are needed for it to 447work. 448See 449.Xr mountd 8 450and 451.Xr nfsd 8 452for details. 453.It Cd option QUOTA 454Enables kernel support for file system quotas. 455See 456.Xr quotaon 8 , 457.Xr edquota 8 , 458.Xr repquota 8 , 459and 460.Xr quota 1 461for details. 462Note that quotas only work on 463.Dq ffs 464file systems, although 465.Xr rpc.rquotad 8 466permits them to be accessed over 467.Em NFS . 468.It Cd option UFS_DIRHASH 469This option enables using an in memory hash table to speed lookups 470in large directories. 471.El 472.Sh MISCELLANEOUS OPTIONS 473.Bl -ohang 474.It Cd option APERTURE 475Provide in-kernel support for controlling VGA framebuffer mapping 476and PCI configuration registers by user-processes 477(such as an X Window System server). 478This option is supported on the 479.Va alpha , 480.Va amd64 , 481.Va i386 , 482.Va macppc , 483and 484.Va sparc64 485architectures. 486.It Cd option BOOT_CONFIG 487Adds support for the 488.Fl c 489boot option (User Kernel Config). 490Allows modification of kernel settings (e.g., device parameters) before 491booting the system. 492.It Cd option CCDNBUF= Ns Ar integer 493The 494.Xr ccd 4 495device driver uses 496.Dq component buffers 497to distribute I/O requests to the components of a concatenated disk. 498It keeps a freelist of buffer 499headers in order to reduce use of the kernel memory allocator. 500.Em CCDNBUF 501is the number of buffer headers allocated on the freelist for 502each component buffer. 503It defaults to 8. 504.It Cd option CRYPTO 505Enables support for the kernel cryptographic framework. 506See 507.Xr crypto 9 508for details. 509While not IP specific, this option is usually used in conjunction with option 510.Em IPSEC . 511.It Cd option EISAVERBOSE 512Makes the boot process more verbose for EISA peripherals. 513.It Cd option INSECURE 514Hardwires the kernel security level at \-1. 515This means that the system always runs in securelevel 0 mode, even when 516running multiuser. 517See 518.Xr init 8 519for details on the implications of this. 520The kernel secure level may be manipulated by the superuser by altering the 521.Em kern.securelevel 522sysctl variable. 523(It should be noted that the securelevel may only be lowered by a call from 524process ID 1, i.e., 525.Xr init 8 . ) 526See also 527.Xr sysctl 8 528and 529.Xr sysctl 3 . 530.It Cd option KMEMSTATS 531The kernel memory allocator, 532.Xr malloc 9 , 533will keep statistics on its performance if this option is enabled. 534Note that this option is silently turned on by the 535.Cm DEBUG 536option. 537.It Cd option LKM 538Enables support for loadable kernel modules. 539See 540.Xr lkm 4 541for details. 542.Em Note: 543This option is not yet available on all architectures. 544.It Cd option MACOBIOVERBOSE 545Makes the boot process more verbose for OBIO peripherals on the 546.Va macppc 547architecture. 548.It Cd option MULTIPROCESSOR 549On those architectures that have it, this enables multiprocessor support. 550.It Cd option PCIVERBOSE 551Makes the boot process more verbose for PCI peripherals 552(vendor names and other information is printed, etc.). 553.It Cd option PCMCIAVERBOSE 554Makes the boot process more verbose for PCMCIA peripherals. 555.It Cd option RAID_AUTOCONFIG 556Adds support for auto-configuring the RAIDframe devices during the kernel 557initialization. 558See 559.Xr raid 4 560and 561.Xr raidctl 8 562for details. 563.It Cd option USER_LDT 564Enable userland manipulation of per-process 565Local Descriptor Table (LDT) entries; 566see 567.Xr i386_set_ldt 2 568and the 569.Va machdep.userldt 570.Xr sysctl 8 . 571This option is supported on the 572.Va i386 573architecture. 574.It Cd option USER_PCICONF 575Enables the user level access to the PCI bus configuration space 576through ioctls on the 577.Pa /dev/pci 578device. 579It's used by the 580.Xr Xorg 1 581server on some architectures. 582See 583.Xr pci 4 584for details. 585.It Cd option UVM_SWAP_ENCRYPT 586Enables kernel support for encrypting pages that are written out to 587swap storage. 588Swap encryption prevents sensitive data from remaining 589on the disk even after the operating system has been shut down. 590This option should be turned on if cryptographic filesystems are used. 591The sysctl variable 592.Em vm.swapencrypt.enable 593controls its behaviour. 594See 595.Xr sysctl 8 596and 597.Xr sysctl 3 598for details. 599.El 600.Sh NETWORKING OPTIONS 601.Bl -ohang 602.It Cd option ALTQ 603Enables ALTQ (Alternate Queuing). 604See 605.Xr pfctl 8 606and 607.Xr pf.conf 5 608to set up the interface transmission rate and queueing disciplines. 609.Em ALTQ_CBQ , 610.Em ALTQ_RED , 611.Em ALTQ_PRIQ 612and 613.Em ALTQ_HFSC 614are enabled by default with option 615.Em ALTQ 616in 617.Ox . 618See 619.Xr altq 9 620for details on ALTQ. 621.It Cd option ALTQ_NOPCC 622Disables use of processor cycle counter (e.g., Pentium TSC on i386 and 623PCC on alpha) to measure time in ALTQ. 624This option should be defined for a non-Pentium i386 CPU which does not 625have TSC, SMP (per-CPU counters are not in sync), or power management 626which affects processor cycle counter. 627.It Cd option ALTQ_RIO 628Enables ALTQ's RIO (RED with In/Out) module. 629The original RIO has 2 sets of RED parameters; one for in-profile 630packets and the other for out-of-profile packets. 631At the ingress of the network, profile meters tag packets as IN or 632OUT based on contracted profiles for customers. 633Inside the network, IN packets receive preferential treatment by 634the RIO dropper. 635ALTQ/RIO has 3 drop precedence levels defined for the Assured Forwarding 636PHB of DiffServ (RFC 2597). 637.It Cd option ENCDEBUG 638This option enables debugging information to be conditionally logged 639in case IPSEC encounters errors. 640The option 641.Em IPSEC 642is required along with this option. 643Debug logging can be turned on/off through the use of the 644.Em net.inet.ip.encdebug 645sysctl variable. 646If 647.Em net.ipsec.encap.encdebug 648is 1, debug logging is on. 649See 650.Xr sysctl 8 651and 652.Xr sysctl 3 653for details. 654.It Cd option INET 655Includes support for the TCP/IP protocol stack. 656This option is currently required. 657See 658.Xr inet 4 659for details. 660.It Cd option INET6 661Includes support for the IPv6 protocol stack. 662See 663.Xr inet6 4 664for details. 665Unlike 666.Em INET , 667.Em INET6 668enables multicast routing code as well. 669This option requires 670.Em INET 671at this moment, but it should not. 672.It Cd option IPSEC 673This option enables IP security protocol support. 674See 675.Xr ipsec 4 676for more details. 677.It Cd option KEY 678Enables PFKEYv2 (RFC 2367) support. 679While not IP specific, this option is usually used in conjunction with option 680.Em IPSEC . 681.It Cd option MROUTING 682Includes support for IP multicast routers. 683.Em INET 684should be set along with this. 685Multicast routing is controlled by the 686.Xr mrouted 8 687daemon. 688.It Cd option ND6_DEBUG 689The option sets the default value of 690.Em net.inet6.icmp6.nd6_debug 691to 1, 692for debugging IPv6 neighbor discovery protocol handling. 693See 694.Xr sysctl 3 695for details. 696.It Cd option NETATALK 697Include kernel support for the AppleTalk family of protocols. 698This suite of supporting code is sometimes called 699.Em netatalk 700support. 701.It Cd option PPP_BSDCOMP 702Enables BSD compressor for PPP connections. 703.It Cd option PPP_DEFLATE 704For use in conjunction with PPP_BSDCOMP; provides an interface to zlib for PPP 705for deflate compression/decompression. 706.It Cd option TCP_ECN 707Turns on Explicit Congestion Notification (RFC 3168). 708.Em ECN 709allows intermediate routers to use the Congestion Experienced 710codepoint in the IP header as an indication of congestion, and allows 711TCP to adjust the transmission rate using this signal. 712Both communication endpoints negotiate enabling 713.Em ECN 714functionality at the TCP connection establishment. 715.It Cd option TCP_FACK 716Turns on forward acknowledgements allowing a more precise estimate of 717outstanding data during the fast recovery phase by using 718.Em SACK 719information. 720This option can only be used together with 721.Em TCP_SACK . 722.It Cd option TCP_SACK 723Turns on selective acknowledgements. 724Additional information about 725segments already received can be transmitted back to the sender, 726thus indicating segments that have been lost and allowing for 727a swifter recovery. 728Both communication endpoints need to support 729.Em SACK . 730The fallback behaviour is NewReno fast recovery phase, which allows 731one lost segment to be recovered per round trip time. 732When more than one segment has been dropped per window, the transmission can 733continue without waiting for a retransmission timeout. 734.It Cd option TCP_SIGNATURE 735Turns on support for the TCP MD5 Signature option (RFC 2385). 736This is used by 737Internet backbone routers to provide per-packet authentication for the TCP 738packets used to communicate BGP routing information. 739You will also need a 740routing daemon that supports this option in order to actually use it. 741.El 742.Sh OPERATION RELATED OPTIONS 743.Bl -ohang -compact 744.It Cd option APM_NOPRINT 745This option is supported on the i386 architecture. 746When enabled, kernel messages regarding the status of the automatic power 747management system (APM) are suppressed. 748APM status can still be obtained using 749.Xr apm 8 750and/or 751.Xr apmd 8 . 752.Pp 753.It Cd option BUFPAGES= Ns Ar value 754.It Cd option NBUF= Ns Ar value 755These options set the number of pages available for the buffer cache. 756Their default value is a machine dependent value, often calculated as 757between 5% and 10% of total available RAM. 758.Pp 759.It Cd option DST= Ns Ar value 760If 761.Ar value 762is non-zero, indicates that the hardware realtime clock device 763is one hour ahead of the offset given in 764.Sq TIMEZONE , 765due to Daylight Saving Time (DST). 766If 767.Ar value 768is zero, the hardware realtime clock device is not in Daylight Saving Time. 769.Pp 770.It Cd option NKMEMPAGES= Ns Ar value 771.It Cd option NKMEMPAGES_MAX= Ns Ar value 772.It Cd option NKMEMPAGES_MIN= Ns Ar value 773Size of kernel malloc area in PAGE_SIZE-sized logical pages. 774This area is covered by the kernel submap 775.Em kmem_map . 776The kernel attempts to auto-size this map based on the amount of 777physical memory in the system. 778Platform-specific code may place bounds on this computed size, 779which may be viewed with the 780.Xr sysctl 8 781variable 782.Em vm.nkmempages . 783See 784.Pa /usr/include/machine/param.h 785for the default upper and lower bounds. 786The related options 787.Sq NKMEMPAGES_MIN 788and 789.Sq NKMEMPAGES_MAX 790allow the bounds to be overridden in the kernel configuration file. 791These options are provided in the event the computed value is 792insufficient resulting in an 793.Dq out of space in kmem_map 794panic. 795.Pp 796.It Cd option \&"TIMEZONE= Ns Ar value Ns Cm \&" 797.Ar value 798indicates the time zone offset of the hardware realtime clock device, 799in minutes, 800from UTC. 801It is useful when the hardware realtime clock device is configured 802with local time, 803when dual-booting 804.Ox 805with other operating systems on a single machine. 806For instance, if the hardware realtime clock is set to Tokyo time, 807.Ar value 808should be 809.Li \&-540 810as Tokyo local time is 9 hours ahead of UTC. 811Double quotes are needed when specifying a negative 812.Ar value . 813.El 814.Sh SCSI SUBSYSTEM OPTIONS 815.Bl -ohang 816.It Cd option SCSI_DELAY= Ns Ar value 817Delay for 818.Ar value 819seconds before starting to probe the first SCSI bus. 820This can be used if a SCSI device needs extra time to get ready. 821.It Cd option SCSIDEBUG 822Enable printing of SCSI subsystem debugging info to the console. 823Each of 824.Em SCSIDEBUG_LEVEL , 825.Em SCSIDEBUG_BUSES , 826.Em SCSIDEBUG_TARGETS 827and 828.Em SCSIDEBUG_LUNS 829must have non-zero values for any debugging info to be printed. 830Only 831.Em SCSIDEBUG_LEVEL 832.It Cd option SCSIDEBUG_BUSES= Ns Ar value 833Define which SCSI buses will print debug info. 834Each bit enables debugging info for the corresponding bus. 835e.g. a value of 0x1 enables debug info for bus 0. 836has a default value that is non-zero. 837.It Cd option SCSIDEBUG_LEVEL= Ns Ar value 838Define which of the four levels of debugging info are printed. 839Each bit enables a level, and multiple levels are specified by setting multiple 840bits. 841.Bd -literal -offset indent 8420x0010 (SDEV_DB1) SCSI commands, errors, and data 8430x0020 (SDEV_DB2) routine flow 8440x0040 (SDEV_DB3) routine internals 8450x0080 (SDEV_DB4) miscellaneous addition debugging 846.Ed 847.Pp 848If 849.Em SCSIDEBUG_LEVEL 850is undefined, a value of 0x0030 (SDEV_DB1|SDEV_DB2) is used. 851.It Cd option SCSIDEBUG_LUNS= Ns Ar value 852Define which SCSI luns will print debug info. 853Each bit enables debugging info for the corresponding lun. 854.It Cd option SCSIDEBUG_TARGETS= Ns Ar value 855Define which SCSI targets will print debug info. 856Each bit enables debugging info for the corresponding target. 857.It Cd option SCSITERSE 858Terser SCSI error messages. 859This omits the table for decoding ASC/ASCQ info, saving about 30KB. 860.El 861.Sh SYSTEM V IPC OPTIONS 862.Bl -ohang 863.It Cd option SEMMNI= Ns Ar value 864Number of semaphore identifiers (also called semaphore handles 865and semaphore sets) available in the system. 866Default value is 10. 867The kernel allocates memory for the control structures at startup, 868so arbitrarily large values should be avoided. 869.It Cd option SEMMNS= Ns Ar value 870Maximum number of semaphores in all sets in the system. 871Default value is 60. 872.It Cd option SEMMNU= Ns Ar value 873Maximum number of semaphore undo structures in the system. 874Default value is 30. 875.It Cd option SEMUME= Ns Ar value 876Maximum number of per-process undo operation entries in the 877system. 878Semaphore undo operations are invoked by the kernel when 879.Xr semop 2 880is called with the SEM_UNDO flag and the process holding 881the semaphores terminates unexpectedly. 882Default value is 10. 883.It Cd option SHMMAXPGS= Ns Ar value 884Sets the maximum number of 885.At V 886style shared memory pages that are available through the 887.Xr shmget 2 888system call. 889Default value is 1024 on most architectures. 890See 891.Pa /usr/include/machine/vmparam.h 892for the default. 893.It Cd option SYSVMSG 894Includes support for 895.At V 896style message queues. 897See 898.Xr msgctl 2 , 899.Xr msgget 2 , 900.Xr msgrcv 2 , 901.Xr msgsnd 2 . 902.It Cd option SYSVSEM 903Includes support for 904.At V 905style semaphores. 906See 907.Xr semctl 2 , 908.Xr semget 2 , 909.Xr semop 2 . 910.It Cd option SYSVSHM 911Includes support for 912.At V 913style shared memory. 914See 915.Xr shmat 2 , 916.Xr shmctl 2 , 917.Xr shmdt 2 , 918.Xr shmget 2 . 919.El 920.Sh SEE ALSO 921.Xr intro 4 , 922.Xr files.conf 5 , 923.Xr config 8 , 924.Xr sysctl 8 925.Sh HISTORY 926The 927.Nm 928man page first appeared in 929.Ox 2.3 . 930.Sh BUGS 931The 932.Em INET 933option should not be required. 934