1.\" $OpenBSD: options.4,v 1.226 2012/04/06 15:42:56 jsing 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: April 6 2012 $ 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 58This option enables compatibility with 59.Bx 4.3 . 60It adds ioctls for 61.Dv TIOCGETP 62and 63.Dv TIOCSETP . 64It also enables the deprecated 65.Dv NTTYDISC 66terminal line discipline. 67It provides backwards compatibility with the 68.Dq old 69SIOC[GS]IF{ADDR,DSTADDR,BRDADDR,NETMASK} interface ioctls, including 70binary compatibility for code written before the introduction of the 71.Li sa_len 72field in sockaddrs. 73.It Cd option COMPAT_LINUX 74On those architectures that support it, this enables binary 75compatibility with 76.Em Linux 77ELF and a.out 78applications built for the same architecture. 79This option is supported on the i386 architecture. 80See 81.Xr compat_linux 8 . 82.El 83.Sh DEBUGGING OPTIONS 84.Bl -ohang 85.It Cd makeoptions DEBUG="-g" 86The 87.Fl g 88flag causes 89.Pa bsd.gdb 90to be built in addition to 91.Pa bsd . 92.Pa bsd.gdb 93is useful for debugging kernels and their crash dumps with gdb. 94A crash dump can be debugged by starting 95.Xr gdb 1 96with the kernel name 97.Pf ( Pa bsd.gdb ) 98as an argument (no core file) and then use the 99.Xr gdb 1 100command 101.Dq target kvm COREFILE . 102.It Cd makeoptions PROF="-pg" 103The 104.Fl pg 105flag causes the kernel to be compiled with support for profiling. 106The 107.Cm option GPROF 108is required for the kernel compile to succeed. 109.It Cd option ACCOUNTING 110Adds support for the 111.Xr acct 2 112system call. 113.It Cd option DDB 114Compiles in a kernel debugger for diagnosing kernel problems. 115See 116.Xr ddb 4 117for details. 118.It Cd option DDB_SAFE_CONSOLE 119Allows a break into the kernel debugger during boot. 120Useful when debugging problems that can cause 121.Xr init 8 122to fail. 123.It Cd option DDB_STRUCT 124Compiles in symbolic information about the various data structures used by the 125kernel, for use within the kernel debugger. 126This option is currently not supported on alpha, m68k, m88k and vax based 127platforms. 128.It Cd option DEBUG 129Turns on miscellaneous kernel debugging. 130Since options are turned into preprocessor defines (see above), 131.Cm option DEBUG 132is equivalent to doing a 133.Em #define DEBUG 134throughout the kernel. 135Much of the kernel has 136.Em #ifdef DEBUG 137conditional debugging code. 138Note that many parts of the kernel (typically device drivers) include their own 139.Em #ifdef XXX_DEBUG 140conditionals instead. 141This option also turns on certain other options, notably 142.Cm option KMEMSTATS . 143.It Cd option DIAGNOSTIC 144Adds code to the kernel that does internal consistency checks. 145This code will cause the kernel to panic if corruption of internal data 146structures is detected. 147.It Cd option GPROF 148Adds code to the kernel for kernel profiling with 149.Xr kgmon 8 . 150.It Cd option KGDB 151Compiles in a remote kernel debugger stub for diagnosing kernel problems 152using the 153.Dq remote target 154feature of gdb. 155See 156.Xr kgdb 7 157for details. 158.Em Note: 159not available on all architectures. 160.It Cd option KTRACE 161Adds hooks for the system call tracing facility, which allows users to 162watch the system call invocation behavior of processes. 163See 164.Xr ktrace 1 165for details. 166.It Cd option NO_PROPOLICE 167Do not compile the kernel with the ProPolice stack protection. 168See 169.Xr gcc-local 1 170for more information about ProPolice. 171.It Cd option PTRACE 172Adds hooks for the process tracing facility, allowing a process to 173control and observe another process. 174See 175.Xr ptrace 2 176for details. 177.It Cd option SMALL_KERNEL 178Removes some features and some optimizations from the kernel to reduce the 179size of the resulting kernel binary. 180This option is used on some installation media and should not be used 181for general purpose kernels. 182.It Cd option VFSLCKDEBUG 183Turns on debugging for the Virtual File System interface. 184See 185.Xr vfs 9 186for details. 187.El 188.Sh FILE SYSTEMS 189.Bl -ohang 190.It Cd option CD9660 191Includes code for the ISO 9660 + Rock Ridge file system, which is the 192standard file system used on many CD-ROMs. 193It also supports Joliet extensions. 194See 195.Xr mount_cd9660 8 196for details. 197.It Cd option EXT2FS 198Includes code implementing the Second Extended File System 199.Em ( EXT2FS ) , 200commonly used on the Linux operating system. 201This option is provided here for compatibility. 202Some specific features of 203.Em EXT2FS 204like the "behavior on errors" are not implemented. 205This file system 206can't be used with 207.Li uid_t 208or 209.Li gid_t 210values greater than 65535. 211Also, the filesystem will not function correctly on architectures with 212differing byte-orders. 213That is, a big-endian machine will not be able to read an 214ext2fs filesystem created on an i386 or other little-endian machine. 215See 216.Xr mount_ext2fs 8 217for details. 218.It Cd option FFS 219Includes code implementing the Berkeley Fast File System 220.Em ( FFS ) . 221Most machines need this if they are not running diskless. 222.It Cd option FFS2 223Includes code implementing the enhanced Fast File System 224.Em ( FFS2 ) . 225.It Cd option MFS 226Include the memory file system 227.Em ( MFS ) . 228This file system stores files in swappable memory, and produces 229notable performance improvements when it is used as the file store 230for 231.Pa /tmp 232or similar mount points. 233See 234.Xr mount_mfs 8 235for details. 236.It Cd option MSDOSFS 237Includes support for the MS-DOS FAT file system. 238The kernel also implements the Windows 95 239extensions which permit the use of longer, mixed-case file names. 240See 241.Xr mount_msdos 8 242and 243.Xr fsck_msdos 8 244for details. 245.It Cd option NFSCLIENT 246Include the client side of the 247.Em NFS 248(Network File System) remote file sharing protocol. 249Although the bulk of the code implementing 250.Em NFS 251is kernel based, several user level daemons are needed for it to work. 252See 253.Xr mount_nfs 8 254for details on NFS. 255.It Cd option NTFS 256Includes support for reading NTFS file systems. 257See 258.Xr mount_ntfs 8 259for details. 260.It Cd option PROCFS 261Includes code for a special file system (conventionally mounted on 262.Pa /proc ) 263in which the process space becomes visible in the file system. 264Among other things, the memory spaces of processes running on the system are 265visible as files, and signals may be sent to processes by writing to 266.Pa ctl 267files in the procfs namespace. 268See 269.Xr mount_procfs 8 270for details. 271.It Cd option UDF 272Includes code for the UDF file systems typically found on DVD discs. 273See 274.Xr mount_udf 8 275for details. 276.It Cd option NNPFS 277Includes the kernel support for the AFS-compatible Arla filesystem. 278Since the xfs interface is simple and generic it can be used for other 279filesystems as well. 280See 281.Xr mount_nnpfs 8 282for details. 283.El 284.Sh FILE SYSTEM OPTIONS 285.Bl -ohang 286.It Cd option BUFCACHEPERCENT= Ns Ar integer 287Percentage of RAM to use as a file system buffer. 288It defaults to 5. 289.It Cd option EXT2FS_SYSTEM_FLAGS 290This option changes the behavior of the APPEND and IMMUTABLE flags 291for a file on an 292.Em EXT2FS 293filesystem. 294Without this option, the superuser or owner of the file can set and clear them. 295With this option, only the superuser can set them, and they can't be cleared 296if the securelevel is greater than 0. 297See also 298.Xr chflags 1 . 299.It Cd option FFS_SOFTUPDATES 300Enables a scheme that uses partial ordering of buffer cache operations 301to allow metadata updates in FFS to happen asynchronously, increasing write 302performance significantly. 303Normally, the FFS filesystem writes metadata updates synchronously which exacts 304a performance penalty in favor of filesystem integrity. 305With soft updates, the performance of asynchronous writes is gained while 306retaining the safety of synchronous metadata updates. 307.Pp 308Soft updates must be enabled on a per-filesystem basis. 309See 310.Xr mount 8 311for details. 312.Pp 313Processors with a small kernel address space, such as the sun4 and sun4c, do 314not have enough kernel memory to support soft updates. 315Attempts to use this option with these CPUs will cause a kernel hang or panic 316after a short period of use as the kernel will quickly run out of memory. 317This is not related to the amount of physical memory present in the machine -- 318it is a limitation of the CPU architecture itself. 319.It Cd option FIFO 320Adds support for 321.At V 322style FIFOs (i.e., 323.Dq named pipes ) . 324This option is recommended in almost all cases as many programs use these. 325.It Cd option NFSSERVER 326Include the server side of the 327.Em NFS 328(Network File System) remote file sharing protocol. 329Although the bulk of the code implementing 330.Em NFS 331is kernel based, several user level daemons are needed for it to 332work. 333See 334.Xr mountd 8 335and 336.Xr nfsd 8 337for details. 338.It Cd option QUOTA 339Enables kernel support for file system quotas. 340See 341.Xr quotaon 8 , 342.Xr edquota 8 , 343.Xr repquota 8 , 344and 345.Xr quota 1 346for details. 347Note that quotas only work on 348.Dq ffs 349file systems, although 350.Xr rpc.rquotad 8 351permits them to be accessed over 352.Em NFS . 353.It Cd option UFS_DIRHASH 354This option enables using an in memory hash table to speed lookups 355in large directories. 356.El 357.Sh MISCELLANEOUS OPTIONS 358.Bl -ohang 359.It Cd option APERTURE 360Provide in-kernel support for controlling VGA framebuffer mapping 361and PCI configuration registers by user-processes 362(such as an X Window System server). 363This option is supported on the 364.Va alpha , 365.Va amd64 , 366.Va i386 , 367.Va macppc , 368and 369.Va sparc64 370architectures. 371.It Cd option BOOT_CONFIG 372Adds support for the 373.Fl c 374boot option (User Kernel Config). 375Allows modification of kernel settings (e.g., device parameters) before 376booting the system. 377.It Cd option CRYPTO 378Enables support for the kernel cryptographic framework. 379See 380.Xr crypto 9 381for details. 382While not IP specific, this option is usually used in conjunction with option 383.Em IPSEC . 384.It Cd option EISAVERBOSE 385Makes the boot process more verbose for EISA peripherals. 386.It Cd option INSECURE 387Hardwires the kernel security level at \-1. 388This means that the system always runs in securelevel 0 mode, even when 389running multiuser. 390See 391.Xr init 8 392for details on the implications of this. 393The kernel secure level may be manipulated by the superuser by altering the 394.Em kern.securelevel 395sysctl variable. 396(It should be noted that the securelevel may only be lowered by a call from 397process ID 1, i.e., 398.Xr init 8 . ) 399See also 400.Xr sysctl 8 401and 402.Xr sysctl 3 . 403.It Cd option KMEMSTATS 404The kernel memory allocator, 405.Xr malloc 9 , 406will keep statistics on its performance if this option is enabled. 407Note that this option is silently turned on by the 408.Cm DEBUG 409option. 410.It Cd option LKM 411Enables support for loadable kernel modules. 412See 413.Xr lkm 4 414for details. 415.Em Note: 416This option is not yet available on all architectures. 417.It Cd option MACOBIOVERBOSE 418Makes the boot process more verbose for OBIO peripherals on the 419.Va macppc 420architecture. 421.It Cd option MULTIPROCESSOR 422On those architectures that have it, this enables multiprocessor support. 423.It Cd option PCIVERBOSE 424Makes the boot process more verbose for PCI peripherals 425(vendor names and other information is printed, etc.). 426.It Cd option PCMCIAVERBOSE 427Makes the boot process more verbose for PCMCIA peripherals. 428.It Cd option USER_LDT 429Enable userland manipulation of per-process 430Local Descriptor Table (LDT) entries; 431see 432.Xr i386_set_ldt 2 433and the 434.Va machdep.userldt 435.Xr sysctl 8 . 436This option is supported on the 437.Va i386 438architecture. 439.It Cd option USER_PCICONF 440Enables the user level access to the PCI bus configuration space 441through ioctls on the 442.Pa /dev/pci 443device. 444It's used by the 445.Xr Xorg 1 446server on some architectures. 447See 448.Xr pci 4 449for details. 450.It Cd option UVM_SWAP_ENCRYPT 451Enables kernel support for encrypting pages that are written out to 452swap storage. 453Swap encryption prevents sensitive data from remaining 454on the disk even after the operating system has been shut down. 455This option should be turned on if cryptographic filesystems are used. 456The sysctl variable 457.Em vm.swapencrypt.enable 458controls its behaviour. 459See 460.Xr sysctl 8 461and 462.Xr sysctl 3 463for details. 464.El 465.Sh NETWORKING OPTIONS 466.Bl -ohang 467.It Cd option ALTQ 468Enables ALTQ (Alternate Queuing). 469See 470.Xr pfctl 8 471and 472.Xr pf.conf 5 473to set up the interface transmission rate and queueing disciplines. 474.Em ALTQ_CBQ , 475.Em ALTQ_RED , 476.Em ALTQ_PRIQ 477and 478.Em ALTQ_HFSC 479are enabled by default with option 480.Em ALTQ 481in 482.Ox . 483See 484.Xr altq 9 485for details on ALTQ. 486.It Cd option ENCDEBUG 487This option enables debugging information to be conditionally logged 488in case IPSEC encounters errors. 489The option 490.Em IPSEC 491is required along with this option. 492Debug logging can be turned on/off through the use of the 493.Em net.inet.ip.encdebug 494sysctl variable. 495If 496.Em net.inet.ip.encdebug 497is 1, debug logging is on. 498See 499.Xr sysctl 8 500and 501.Xr sysctl 3 502for details. 503.It Cd option INET 504Includes support for the TCP/IP protocol stack. 505This option is currently required. 506See 507.Xr inet 4 508for details. 509.It Cd option INET6 510Includes support for the IPv6 protocol stack. 511See 512.Xr inet6 4 513for details. 514Unlike 515.Em INET , 516.Em INET6 517enables multicast routing code as well. 518This option requires 519.Em INET 520at this moment, but it should not. 521.It Cd option IPSEC 522This option enables IP security protocol support. 523See 524.Xr ipsec 4 525for more details. 526.It Cd option KEY 527Enables PFKEYv2 (RFC 2367) support. 528While not IP specific, this option is usually used in conjunction with option 529.Em IPSEC . 530.It Cd option MROUTING 531Includes support for IP multicast routers. 532.Em INET 533should be set along with this. 534Multicast routing is controlled by the 535.Xr mrouted 8 536daemon. 537.It Cd option ND6_DEBUG 538The option sets the default value of 539.Em net.inet6.icmp6.nd6_debug 540to 1, 541for debugging IPv6 neighbor discovery protocol handling. 542See 543.Xr sysctl 3 544for details. 545.It Cd option PIPEX 546Includes PIPEX in-kernel acceleration for PPPoE, L2TP or PPTP. 547.It Cd option PPP_BSDCOMP 548Enables BSD compressor for PPP connections. 549.It Cd option PPP_DEFLATE 550For use in conjunction with PPP_BSDCOMP; provides an interface to zlib for PPP 551for deflate compression/decompression. 552.It Cd option SOCKET_SPLICE 553Enables zero-copy socket splicing in the kernel. 554See 555.Dv SO_SPLICE 556in 557.Xr setsockopt 2 558and 559.Xr sosplice 9 560for details. 561.It Cd option TCP_ECN 562Turns on Explicit Congestion Notification (RFC 3168). 563.Em ECN 564allows intermediate routers to use the Congestion Experienced 565codepoint in the IP header as an indication of congestion, and allows 566TCP to adjust the transmission rate using this signal. 567Both communication endpoints negotiate enabling 568.Em ECN 569functionality at the TCP connection establishment. 570.It Cd option TCP_FACK 571Turns on forward acknowledgements allowing a more precise estimate of 572outstanding data during the fast recovery phase by using 573.Em SACK 574information. 575This option can only be used together with 576.Em TCP_SACK . 577.It Cd option TCP_SACK 578Turns on selective acknowledgements. 579Additional information about 580segments already received can be transmitted back to the sender, 581thus indicating segments that have been lost and allowing for 582a swifter recovery. 583Both communication endpoints need to support 584.Em SACK . 585The fallback behaviour is NewReno fast recovery phase, which allows 586one lost segment to be recovered per round trip time. 587When more than one segment has been dropped per window, the transmission can 588continue without waiting for a retransmission timeout. 589.It Cd option TCP_SIGNATURE 590Turns on support for the TCP MD5 Signature option (RFC 2385). 591This is used by 592Internet backbone routers to provide per-packet authentication for the TCP 593packets used to communicate BGP routing information. 594You will also need a 595routing daemon that supports this option in order to actually use it. 596.El 597.Sh OPERATION RELATED OPTIONS 598.Bl -ohang -compact 599.It Cd option BUFPAGES= Ns Ar value 600.It Cd option NBUF= Ns Ar value 601These options set the number of pages available for the buffer cache. 602Their default value is a machine dependent value, often calculated as 603between 5% and 10% of total available RAM. 604.Pp 605.It Cd option DST= Ns Ar value 606If 607.Ar value 608is non-zero, indicates that the hardware realtime clock device 609is one hour ahead of the offset given in 610.Sq TIMEZONE , 611due to Daylight Saving Time (DST). 612If 613.Ar value 614is zero, the hardware realtime clock device is not in Daylight Saving Time. 615.Pp 616.It Cd option NKMEMPAGES= Ns Ar value 617.It Cd option NKMEMPAGES_MAX= Ns Ar value 618.It Cd option NKMEMPAGES_MIN= Ns Ar value 619Size of kernel malloc area in PAGE_SIZE-sized logical pages. 620This area is covered by the kernel submap 621.Em kmem_map . 622The kernel attempts to auto-size this map based on the amount of 623physical memory in the system. 624Platform-specific code may place bounds on this computed size, 625which may be viewed with the 626.Xr sysctl 8 627variable 628.Em vm.nkmempages . 629See 630.Pa /usr/include/machine/param.h 631for the default upper and lower bounds. 632The related options 633.Sq NKMEMPAGES_MIN 634and 635.Sq NKMEMPAGES_MAX 636allow the bounds to be overridden in the kernel configuration file. 637These options are provided in the event the computed value is 638insufficient resulting in an 639.Dq out of space in kmem_map 640panic. 641.Pp 642.It Cd option \&"TIMEZONE= Ns Ar value Ns Cm \&" 643.Ar value 644indicates the time zone offset of the hardware realtime clock device, 645in minutes, 646from UTC. 647It is useful when the hardware realtime clock device is configured 648with local time, 649when dual-booting 650.Ox 651with other operating systems on a single machine. 652For instance, if the hardware realtime clock is set to Tokyo time, 653.Ar value 654should be 655.Li \&-540 656as Tokyo local time is 9 hours ahead of UTC. 657Double quotes are needed when specifying a negative 658.Ar value . 659.El 660.Sh SCSI SUBSYSTEM OPTIONS 661.Bl -ohang 662.It Cd option SCSI_DELAY= Ns Ar value 663Delay for 664.Ar value 665seconds before starting to probe the first SCSI bus. 666This can be used if a SCSI device needs extra time to get ready. 667.It Cd option SCSIDEBUG 668Enable printing of SCSI subsystem debugging info to the console. 669Each of 670.Em SCSIDEBUG_LEVEL , 671.Em SCSIDEBUG_BUSES , 672.Em SCSIDEBUG_TARGETS 673and 674.Em SCSIDEBUG_LUNS 675must have non-zero values for any debugging info to be printed. 676Only 677.Em SCSIDEBUG_LEVEL 678has a default value (SDEV_DB1 | SDEV_DB2) that is non-zero. 679.It Cd option SCSIDEBUG_BUSES= Ns Ar value 680Define which SCSI buses will print debug info. 681Each bit enables debugging info for the corresponding bus. 682e.g. a value of 0x1 enables debug info for bus 0. 683.It Cd option SCSIDEBUG_LEVEL= Ns Ar value 684Define which of the four levels of debugging info are printed. 685Each bit enables a level, and multiple levels are specified by setting multiple 686bits. 687.Bd -literal -offset indent 6880x0010 (SDEV_DB1) SCSI commands, errors, and data 6890x0020 (SDEV_DB2) routine flow 6900x0040 (SDEV_DB3) routine internals 6910x0080 (SDEV_DB4) miscellaneous addition debugging 692.Ed 693.Pp 694If 695.Em SCSIDEBUG_LEVEL 696is undefined, a value of 0x0030 (SDEV_DB1|SDEV_DB2) is used. 697.It Cd option SCSIDEBUG_LUNS= Ns Ar value 698Define which SCSI luns will print debug info. 699Each bit enables debugging info for the corresponding lun. 700.It Cd option SCSIDEBUG_TARGETS= Ns Ar value 701Define which SCSI targets will print debug info. 702Each bit enables debugging info for the corresponding target. 703.It Cd option SCSITERSE 704Terser SCSI error messages. 705This omits the table for decoding ASC/ASCQ info, saving about 30KB. 706.El 707.Sh SYSTEM V IPC OPTIONS 708.Bl -ohang 709.It Cd option SEMMNI= Ns Ar value 710Number of semaphore identifiers (also called semaphore handles 711and semaphore sets) available in the system. 712Default value is 10. 713The kernel allocates memory for the control structures at startup, 714so arbitrarily large values should be avoided. 715.It Cd option SEMMNS= Ns Ar value 716Maximum number of semaphores in all sets in the system. 717Default value is 60. 718.It Cd option SEMMNU= Ns Ar value 719Maximum number of semaphore undo structures in the system. 720Default value is 30. 721.It Cd option SEMUME= Ns Ar value 722Maximum number of per-process undo operation entries in the 723system. 724Semaphore undo operations are invoked by the kernel when 725.Xr semop 2 726is called with the SEM_UNDO flag and the process holding 727the semaphores terminates unexpectedly. 728Default value is 10. 729.It Cd option SHMMAXPGS= Ns Ar value 730Sets the maximum number of 731.At V 732style shared memory pages that are available through the 733.Xr shmget 2 734system call. 735Default value is 1024 on most architectures. 736See 737.Pa /usr/include/machine/vmparam.h 738for the default. 739.It Cd option SYSVMSG 740Includes support for 741.At V 742style message queues. 743See 744.Xr msgctl 2 , 745.Xr msgget 2 , 746.Xr msgrcv 2 , 747.Xr msgsnd 2 . 748.It Cd option SYSVSEM 749Includes support for 750.At V 751style semaphores. 752See 753.Xr semctl 2 , 754.Xr semget 2 , 755.Xr semop 2 . 756.It Cd option SYSVSHM 757Includes support for 758.At V 759style shared memory. 760See 761.Xr shmat 2 , 762.Xr shmctl 2 , 763.Xr shmdt 2 , 764.Xr shmget 2 . 765.El 766.Sh SEE ALSO 767.Xr intro 4 , 768.Xr files.conf 5 , 769.Xr config 8 , 770.Xr sysctl 8 771.Sh HISTORY 772The 773.Nm 774man page first appeared in 775.Ox 2.3 . 776.Sh BUGS 777The 778.Em INET 779option should not be required. 780