]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/conf/options
This commit was generated by cvs2svn to compensate for changes in r87866,
[FreeBSD/FreeBSD.git] / sys / conf / options
1 # $FreeBSD$
2 #
3 #        On the handling of kernel options
4 #
5 # All kernel options should be listed in NOTES, with suitable
6 # descriptions.  Negative options (options that make some code not
7 # compile) should be commented out; LINT (generated from NOTES) should
8 # compile as much code as possible.  Try to structure option-using
9 # code so that a single option only switch code on, or only switch
10 # code off, to make it possible to have a full compile-test.  If
11 # necessary, you can check for COMPILING_LINT to get maximum code
12 # coverage.
13 #
14 # All new options shall also be listed in either "conf/options" or
15 # "conf/options.<machine>".  Options that affect a single source-file
16 # <xxx>.[c|s] should be directed into "opt_<xxx>.h", while options
17 # that affect multiple files should either go in "opt_global.h" if
18 # this is a kernel-wide option (used just about everywhere), or in
19 # "opt_<option-name-in-lower-case>.h" if it affect only some files.
20 # Note that the effect of listing only an option without a
21 # header-file-name in conf/options (and cousins) is that the last
22 # convention is followed.
23 #
24 # This handling scheme is not yet fully implemented.
25 #
26 #
27 # Format of this file:
28 # Option name   filename
29 #
30 # If filename is missing, the default is
31 # opt_<name-of-option-in-lower-case>.h
32
33 # Adaptec Array Controller driver options
34 AAC_COMPAT_LINUX        opt_aac.h       # Enable the linux ioctl interface
35
36 AAC_DEBUG               opt_aac.h       # Debugging levels:
37                                         # 0 - quiet, only emit warnings
38                                         # 1 - noisy, emit major function
39                                         #     points and things done
40                                         # 2 - extremely noisy, emit trace
41                                         #     items in loops, etc.
42
43 # Adaptec aic7xxx SCSI controller options
44 AHC_ALLOW_MEMIO         opt_aic7xxx.h   # Allow PCI devices to use memory
45                                         # mapped I/O
46
47 AHC_TMODE_ENABLE        opt_aic7xxx.h   # Bitmap of units to enable
48                                         # targetmode operations.
49
50 AHC_DUMP_EEPROM         opt_aic7xxx.h   # Dump the contents of our
51                                         # configuration prom.
52
53 AHC_DEBUG_SEQUENCER     opt_aic7xxx.h   # Enable diagnostic sequencer code
54
55 ADW_ALLOW_MEMIO         opt_adw.h       # Allow PCI devices to use memory
56                                         # mapped I/O
57
58 # Miscellaneous options.
59 BLEED
60 COMPAT_43       opt_compat.h
61 COMPAT_SUNOS    opt_compat.h
62 COMPILING_LINT  opt_global.h
63 CY_PCI_FASTINTR
64 DDB
65 DDB_UNATTENDED  opt_ddb.h
66 GDB_REMOTE_CHAT opt_ddb.h
67 NODEVFS         opt_devfs.h
68 HW_WDOG
69 KTRACE
70 LIBICONV
71 MD_ROOT         opt_md.h
72 MD_ROOT_SIZE    opt_md.h
73 NTIMECOUNTER    opt_ntp.h
74 NSWAPDEV        opt_swap.h
75 PPS_SYNC        opt_ntp.h
76 QUOTA
77 SPX_HACK
78 SUIDDIR         opt_suiddir.h
79 SYSVMSG         opt_sysvipc.h
80 SYSVSEM         opt_sysvipc.h
81 SYSVSHM         opt_sysvipc.h
82 SHMALL          opt_sysvipc.h
83 SHMMAX          opt_sysvipc.h
84 SHMMAXPGS       opt_sysvipc.h
85 SHMMIN          opt_sysvipc.h
86 SHMMNI          opt_sysvipc.h
87 SHMSEG          opt_sysvipc.h
88 SEMMAP          opt_sysvipc.h
89 SEMMNI          opt_sysvipc.h
90 SEMMNS          opt_sysvipc.h
91 SEMMNU          opt_sysvipc.h
92 SEMMSL          opt_sysvipc.h
93 SEMOPM          opt_sysvipc.h
94 SEMUME          opt_sysvipc.h
95 MSGMNB          opt_sysvipc.h
96 MSGMNI          opt_sysvipc.h
97 MSGSEG          opt_sysvipc.h
98 MSGSSZ          opt_sysvipc.h
99 MSGTQL          opt_sysvipc.h
100 UCONSOLE
101 VFS_AIO
102
103 # POSIX kernel options
104 P1003_1B                        opt_posix.h
105 _KPOSIX_PRIORITY_SCHEDULING     opt_posix.h
106 _KPOSIX_VERSION                 opt_posix.h
107
108 # TrustedBSD and POSIX.1e Kernel Options
109 CAPABILITIES    opt_cap.h
110
111 # Do we want the config file compiled into the kernel?
112 INCLUDE_CONFIG_FILE     opt_config.h
113
114 # Options for static file systems.  These should only be used at config
115 # time, since the corresponding lkms cannot work if there are any static
116 # dependencies.  Unusability is enforced by hiding the defines for the
117 # options in a never-included header.
118 CD9660          opt_dontuse.h
119 CODA            opt_dontuse.h
120 EXT2FS          opt_dontuse.h
121 FDESCFS         opt_dontuse.h
122 LINPROCFS       opt_dontuse.h
123 MSDOSFS         opt_dontuse.h
124 NULLFS          opt_dontuse.h
125 NWFS            opt_dontuse.h
126 PORTALFS        opt_dontuse.h
127 PROCFS          opt_dontuse.h
128 PSEUDOFS        opt_dontuse.h
129 UMAPFS          opt_dontuse.h
130 NTFS            opt_dontuse.h
131 HPFS            opt_dontuse.h
132 UNIONFS         opt_dontuse.h
133
134 # Broken - ffs_snapshot() dependency from ufs_lookup() :-(
135 FFS             opt_ffs_broken_fixme.h
136 IFS             opt_ffs_broken_fixme.h
137
138 # These static filesystems has one slightly bogus static dependency in
139 # sys/i386/i386/autoconf.c.  If any of these filesystems are
140 # statically compiled into the kernel, code for mounting them as root
141 # filesystems will be enabled - but look below.
142 NFSCLIENT       opt_nfs.h
143 NFSSERVER       opt_nfs.h
144
145 # If you are following the conditions in the copyright,
146 # you can enable soft-updates which will speed up a lot of thigs
147 # and make the system safer from crashes at the same time.
148 # otherwise a STUB module will be compiled in.
149 SOFTUPDATES     opt_ffs.h
150
151 # Enabling this option turns on support for Access Control Lists in UFS,
152 # which can be used to support high security configurations.  Depends on
153 # UFS_EXTATTR.
154 UFS_ACL         opt_ufs.h
155
156 # Enabling this option turns on support for extended attributes in UFS-based
157 # file systems, which can be used to support high security configurations
158 # as well as new file system features.
159 UFS_EXTATTR     opt_ufs.h
160 UFS_EXTATTR_AUTOSTART   opt_ufs.h
161
162 # Enable fast hash lookups for large directories on UFS-based filesystems.
163 UFS_DIRHASH     opt_ufs.h
164
165 # The above static dependencies are planned removed, with a
166 # <filesystem>_ROOT option to control if it usable as root.  This list
167 # allows these options to be present in config files already (though
168 # they won't make any difference yet).
169 NFS_ROOT        opt_nfsroot.h
170
171 # Options used only in subr_param.c.
172 HZ              opt_param.h
173 MAXFILES        opt_param.h
174 NBUF            opt_param.h
175 NMBCLUSTERS     opt_param.h
176 NSFBUFS         opt_param.h
177 VM_BCACHE_SIZE_MAX      opt_param.h
178 VM_SWZONE_SIZE_MAX      opt_param.h
179 MAXUSERS
180 DFLDSIZ         opt_param.h
181 MAXDSIZ         opt_param.h
182 MAXSSIZ         opt_param.h
183
184 # Generic SCSI options.
185 CAM_MAX_HIGHPOWER       opt_cam.h
186 CAMDEBUG                opt_cam.h
187 CAM_DEBUG_DELAY         opt_cam.h
188 CAM_DEBUG_BUS           opt_cam.h
189 CAM_DEBUG_TARGET        opt_cam.h
190 CAM_DEBUG_LUN           opt_cam.h
191 CAM_DEBUG_FLAGS         opt_cam.h
192 CAM_NEW_TRAN_CODE       opt_cam.h
193 SCSI_DELAY              opt_scsi.h
194 SCSI_NO_SENSE_STRINGS   opt_scsi.h
195 SCSI_NO_OP_STRINGS      opt_scsi.h
196
197
198
199 # Options used only in cam/scsi/scsi_cd.c
200 CHANGER_MIN_BUSY_SECONDS        opt_cd.h
201 CHANGER_MAX_BUSY_SECONDS        opt_cd.h
202
203 # Options used only in cam/scsi/scsi_sa.c.
204 SA_IO_TIMEOUT           opt_sa.h
205 SA_SPACE_TIMEOUT        opt_sa.h
206 SA_REWIND_TIMEOUT       opt_sa.h
207 SA_ERASE_TIMEOUT        opt_sa.h
208 SA_1FM_AT_EOD           opt_sa.h
209
210 # Options used only in cam/scsi/scsi_pt.c
211 SCSI_PT_DEFAULT_TIMEOUT opt_pt.h
212
213 # Options used only in cam/scsi/scsi_ses.c
214 SES_ENABLE_PASSTHROUGH  opt_ses.h
215
216 # Options used in dev/sym/ (Symbios SCSI driver).
217 SYM_SETUP_LP_PROBE_MAP  opt_sym.h       #-Low Priority Probe Map (bits)
218                                         # Allows the ncr to take precedence
219                                         # 1 (1<<0) -> 810a, 860
220                                         # 2 (1<<1) -> 825a, 875, 885, 895
221                                         # 4 (1<<2) -> 895a, 896, 1510d 
222 SYM_SETUP_SCSI_DIFF     opt_sym.h       #-HVD support for 825a, 875, 885
223                                         # disabled:0 (default), enabled:1
224 SYM_SETUP_PCI_PARITY    opt_sym.h       #-PCI parity checking
225                                         # disabled:0, enabled:1 (default)
226 SYM_SETUP_MAX_LUN       opt_sym.h       #-Number of LUNs supported
227                                         # default:8, range:[1..64]
228
229 # Options used only in pci/ncr.c
230 SCSI_NCR_DEBUG          opt_ncr.h
231 SCSI_NCR_MAX_SYNC       opt_ncr.h
232 SCSI_NCR_MAX_WIDE       opt_ncr.h
233 SCSI_NCR_MYADDR         opt_ncr.h
234
235 # Options used only in pci/isp_pci.c
236 ISP_TARGET_MODE         opt_isp.h
237
238 # Options used in the 'ata' ATA/ATAPI driver
239 ACD_DEBUG               opt_ata.h
240 AST_DEBUG               opt_ata.h
241 ATAPI_DEBUG             opt_ata.h
242 ATA_DEBUG               opt_ata.h
243 ATA_STATIC_ID           opt_ata.h
244 DEV_ATADISK             opt_ata.h
245 DEV_ATAPICD             opt_ata.h
246 DEV_ATAPIST             opt_ata.h
247 DEV_ATAPIFD             opt_ata.h
248
249 # Net stuff.
250 ACCEPT_FILTER_DATA
251 ACCEPT_FILTER_HTTP
252 BOOTP                   opt_bootp.h
253 BOOTP_COMPAT            opt_bootp.h
254 BOOTP_NFSROOT           opt_bootp.h
255 BOOTP_NFSV3             opt_bootp.h
256 BOOTP_WIRED_TO          opt_bootp.h
257 BRIDGE                  opt_bdg.h
258 ETHER_II                opt_ef.h
259 ETHER_8023              opt_ef.h
260 ETHER_8022              opt_ef.h
261 ETHER_SNAP              opt_ef.h
262 MROUTING                opt_mrouting.h
263 INET                    opt_inet.h
264 SOMAXCONN               opt_inet.h
265 INET6                   opt_inet6.h
266 IPSEC                   opt_ipsec.h
267 IPSEC_ESP               opt_ipsec.h
268 IPSEC_DEBUG             opt_ipsec.h
269 IPDIVERT
270 DUMMYNET                opt_ipdn.h
271 IPFILTER                opt_ipfilter.h
272 IPFILTER_LOG            opt_ipfilter.h
273 IPFILTER_DEFAULT_BLOCK  opt_ipfilter.h
274 PFIL_HOOKS              opt_pfil_hooks.h
275 IPFIREWALL              opt_ipfw.h
276 IPFIREWALL_VERBOSE      opt_ipfw.h
277 IPFIREWALL_VERBOSE_LIMIT        opt_ipfw.h
278 IPFIREWALL_DEFAULT_TO_ACCEPT    opt_ipfw.h
279 IPFIREWALL_FORWARD              opt_ipfw.h
280 IPV6FIREWALL            opt_ip6fw.h
281 IPV6FIREWALL_VERBOSE    opt_ip6fw.h
282 IPV6FIREWALL_VERBOSE_LIMIT      opt_ip6fw.h
283 IPV6FIREWALL_DEFAULT_TO_ACCEPT  opt_ip6fw.h
284 IPSTEALTH
285 IPX                     opt_ipx.h
286 IPXIP                   opt_ipx.h
287 IPTUNNEL                opt_ipx.h
288 LIBMCHAIN
289 NCP                     opt_ncp.h
290 NETATALK                opt_atalk.h
291 PPP_BSDCOMP             opt_ppp.h
292 PPP_DEFLATE             opt_ppp.h
293 PPP_FILTER              opt_ppp.h
294 RANDOM_IP_ID
295 SLIP_IFF_OPTS           opt_slip.h
296 TCPDEBUG
297 TCP_DROP_SYNFIN         opt_tcp_input.h
298 XBONEHACK
299
300 # Netgraph(4). Use option NETGRAPH to enable the base netgraph code.
301 # Each netgraph node type can be either be compiled into the kernel
302 # or loaded dynamically. To get the former, include the corresponding
303 # option below. Each type has its own man page, e.g. ng_async(4).
304 NETGRAPH
305 NETGRAPH_ASYNC          opt_netgraph.h
306 NETGRAPH_BPF            opt_netgraph.h
307 NETGRAPH_BRIDGE         opt_netgraph.h
308 NETGRAPH_CISCO          opt_netgraph.h
309 NETGRAPH_ECHO           opt_netgraph.h
310 NETGRAPH_ETHER          opt_netgraph.h
311 NETGRAPH_FRAME_RELAY    opt_netgraph.h
312 NETGRAPH_GIF            opt_netgraph.h
313 NETGRAPH_GIF_DEMUX      opt_netgraph.h
314 NETGRAPH_HOLE           opt_netgraph.h
315 NETGRAPH_IFACE          opt_netgraph.h
316 NETGRAPH_IP_INPUT       opt_netgraph.h
317 NETGRAPH_KSOCKET        opt_netgraph.h
318 NETGRAPH_LMI            opt_netgraph.h
319 # MPPC compression requires proprietary files (not included)
320 NETGRAPH_MPPC_COMPRESSION       opt_netgraph.h
321 NETGRAPH_MPPC_ENCRYPTION        opt_netgraph.h
322 NETGRAPH_ONE2MANY       opt_netgraph.h
323 NETGRAPH_PPP            opt_netgraph.h
324 NETGRAPH_PPPOE          opt_netgraph.h
325 NETGRAPH_PPTPGRE        opt_netgraph.h
326 NETGRAPH_RFC1490        opt_netgraph.h
327 NETGRAPH_SOCKET         opt_netgraph.h
328 NETGRAPH_SPLIT          opt_netgraph.h
329 NETGRAPH_TEE            opt_netgraph.h
330 NETGRAPH_TTY            opt_netgraph.h
331 NETGRAPH_UI             opt_netgraph.h
332 NETGRAPH_VJC            opt_netgraph.h
333
334 # ATM (HARP version)
335 ATM_CORE                opt_atm.h
336 ATM_IP                  opt_atm.h
337 ATM_SIGPVC              opt_atm.h
338 ATM_SPANS               opt_atm.h
339 ATM_UNI                 opt_atm.h
340
341 # XXX Conflict: # of devices vs network protocol (Native ATM).
342 # This makes "atm.h" unusable.
343 NATM                    opt_natm.h
344
345 DPT_ALLOW_MEMIO         opt_dpt.h       # Allow PCI devices to use memory
346                                         # mapped I/O
347 # DPT driver debug flags
348 DPT_MEASURE_PERFORMANCE opt_dpt.h
349 DPT_HANDLE_TIMEOUTS     opt_dpt.h
350 DPT_TIMEOUT_FACTOR      opt_dpt.h
351 DPT_LOST_IRQ            opt_dpt.h
352 DPT_RESET_HBA           opt_dpt.h
353
354 # Adaptec ASR and DPT V/VI controller options
355 ASR_MEASURE_PERFORMANCE opt_asr.h
356
357 # Misc debug flags.  Most of these should probably be replaced with
358 # 'DEBUG', and then let people recompile just the interesting modules
359 # with 'make CC="cc -DDEBUG"'.
360 CLUSTERDEBUG            opt_debug_cluster.h
361 DEBUG_1284              opt_ppb_1284.h
362 VP0_DEBUG               opt_vpo.h
363 LPT_DEBUG               opt_lpt.h
364 PLIP_DEBUG              opt_plip.h
365 LOCKF_DEBUG             opt_debug_lockf.h
366 LOUTB                   opt_debug_outb.h
367 NPX_DEBUG               opt_debug_npx.h
368 NETATALKDEBUG           opt_atalk.h
369 SI_DEBUG                opt_debug_si.h
370
371 # Fb options
372 FB_DEBUG                opt_fb.h
373 FB_INSTALL_CDEV         opt_fb.h
374
375 # ppbus related options
376 PERIPH_1284             opt_ppb_1284.h
377 DONTPROBE_1284          opt_ppb_1284.h
378
379 # smbus related options
380 ENABLE_ALART            opt_intpm.h
381
382 # These cause changes all over the kernel
383 BLKDEV_IOSIZE           opt_global.h
384 DEBUG                   opt_global.h
385 DEBUG_LOCKS             opt_global.h
386 DEBUG_VFS_LOCKS         opt_global.h
387 DIAGNOSTIC              opt_global.h
388 ENABLE_VFS_IOOPT        opt_global.h
389 INVARIANT_SUPPORT       opt_global.h
390 INVARIANTS              opt_global.h
391 REGRESSION              opt_global.h
392 RESTARTABLE_PANICS      opt_global.h
393 SIMPLELOCK_DEBUG        opt_global.h
394 VFS_BIO_DEBUG           opt_global.h
395
396 # These are VM related options
397 VM_KMEM_SIZE            opt_vm.h
398 VM_KMEM_SIZE_SCALE      opt_vm.h
399 VM_KMEM_SIZE_MAX        opt_vm.h
400 NO_SWAPPING             opt_vm.h
401 PQ_NOOPT                opt_vmpage.h
402 PQ_NORMALCACHE          opt_vmpage.h
403 PQ_MEDIUMCACHE          opt_vmpage.h
404 PQ_LARGECACHE           opt_vmpage.h
405 PQ_HUGECACHE            opt_vmpage.h
406 PQ_CACHESIZE            opt_vmpage.h
407
408 # Standard SMP options
409 SMP                     opt_global.h
410
411 # sys/netkey
412 KEY
413
414 # Size of the kernel message buffer
415 MSGBUF_SIZE             opt_msgbuf.h
416
417 # PCI related options
418 PCI_QUIET               opt_pci.h
419
420 # NFS options
421 NFS_MINATTRTIMO         opt_nfs.h
422 NFS_MAXATTRTIMO         opt_nfs.h
423 NFS_MINDIRATTRTIMO      opt_nfs.h
424 NFS_MAXDIRATTRTIMO      opt_nfs.h
425 NFS_GATHERDELAY         opt_nfs.h
426 NFS_UIDHASHSIZ          opt_nfs.h
427 NFS_WDELAYHASHSIZ       opt_nfs.h
428 NFS_MUIDHASHSIZ         opt_nfs.h
429 NFS_DEBUG               opt_nfs.h
430
431 # For the Bt848/Bt848A/Bt849/Bt878/Bt879 driver
432 OVERRIDE_CARD                   opt_bktr.h
433 OVERRIDE_TUNER                  opt_bktr.h
434 OVERRIDE_DBX                    opt_bktr.h
435 OVERRIDE_MSP                    opt_bktr.h
436 BROOKTREE_SYSTEM_DEFAULT        opt_bktr.h
437 BROOKTREE_ALLOC_PAGES           opt_bktr.h
438 BKTR_OVERRIDE_CARD              opt_bktr.h
439 BKTR_OVERRIDE_TUNER             opt_bktr.h
440 BKTR_OVERRIDE_DBX               opt_bktr.h
441 BKTR_OVERRIDE_MSP               opt_bktr.h
442 BKTR_SYSTEM_DEFAULT             opt_bktr.h
443 BKTR_ALLOC_PAGES                opt_bktr.h
444 BKTR_USE_PLL                    opt_bktr.h      
445 BKTR_GPIO_ACCESS                opt_bktr.h
446 BKTR_NO_MSP_RESET               opt_bktr.h
447 BKTR_430_FX_MODE                opt_bktr.h
448 BKTR_SIS_VIA_MODE               opt_bktr.h
449
450 # meteor opt_meteor.h
451 METEOR_ALLOC_PAGES      opt_meteor.h
452 METEOR_TEST_VIDEO       opt_meteor.h
453 METEOR_SYSTEM_DEFAULT   opt_meteor.h
454 METEOR_DEALLOC_PAGES    opt_meteor.h
455 METEOR_DEALLOC_ABOVE    opt_meteor.h
456
457 # Various mi ISA bus flags
458 COM_ESP                 opt_sio.h
459 COM_MULTIPORT           opt_sio.h
460 BREAK_TO_DEBUGGER       opt_comconsole.h
461 ALT_BREAK_TO_DEBUGGER   opt_comconsole.h
462 DEV_ISA                 opt_isa.h
463
464 # Include tweaks for running under the SimOS machine simulator.
465 SIMOS                   opt_simos.h
466
467 # options for bus/device framework
468 BUS_DEBUG               opt_bus.h
469 DEVICE_SYSCTLS          opt_bus.h
470
471 # options for USB support
472 UHCI_DEBUG              opt_usb.h
473 OHCI_DEBUG              opt_usb.h
474 USB_DEBUG               opt_usb.h
475 UGEN_DEBUG              opt_usb.h
476 UHID_DEBUG              opt_usb.h
477 UHUB_DEBUG              opt_usb.h
478 UKBD_DEBUG              opt_usb.h
479 ULPT_DEBUG              opt_usb.h
480 UMASS_DEBUG             opt_usb.h
481 UMS_DEBUG               opt_usb.h
482 URIO_DEBUG              opt_usb.h
483 UKBD_DFLT_KEYMAP        opt_ukbd.h
484
485 # Vinum options
486 VINUMDEBUG              opt_vinum.h
487
488 # Embedded system options
489 INIT_PATH               opt_init_path.h
490
491 ROOTDEVNAME             opt_rootdevname.h
492
493 FDC_DEBUG               opt_fdc.h
494 PCFCLOCK_VERBOSE        opt_pcfclock.h
495 PCFCLOCK_MAX_RETRIES    opt_pcfclock.h
496 TDFX_LINUX opt_tdfx.h
497
498 KTR                     opt_global.h
499 KTR_MASK                opt_ktr.h
500 KTR_CPUMASK             opt_ktr.h
501 KTR_COMPILE             opt_global.h
502 KTR_ENTRIES             opt_global.h
503 KTR_EXTEND              opt_global.h
504 KTR_VERBOSE             opt_ktr.h
505 MUTEX_DEBUG             opt_global.h
506 CV_DEBUG                opt_global.h
507 WITNESS                 opt_global.h
508 WITNESS_DDB             opt_witness.h
509 WITNESS_SKIPSPIN        opt_witness.h
510
511 # options for ACPI support
512 ACPI_DEBUG              opt_acpi.h
513 AML_DEBUG               opt_acpi.h
514 ACPI_NO_ENABLE_ON_BOOT  opt_acpi.h
515
516 # options for DEVFS, see sys/fs/devfs/devfs.h
517 NDEVFSINO               opt_devfs.h
518 NDEVFSOVERFLOW          opt_devfs.h
519
520 # various 'device presence' options.
521 DEV_MCA                 opt_mca.h
522 DEV_BPF                 opt_bpf.h
523
524 # ed driver
525 ED_NO_MIIBUS            opt_ed.h