Create 'k' versions of the kernel malloc API.
[dragonfly.git] / sys / conf / options
CommitLineData
984263bc 1# $FreeBSD: src/sys/conf/options,v 1.191.2.53 2003/06/04 17:56:58 sam Exp $
8aca2bd4 2# $DragonFly: src/sys/conf/options,v 1.53 2006/09/04 23:03:34 dillon Exp $
984263bc
MD
3#
4# On the handling of kernel options
5#
6# All kernel options should be listed in LINT, with suitable
7# descriptions. Negative options (options that make some code not
8# compile) should be commented out; LINT should compile as much code
9# as possible. Try to structure option-using code so that a single
10# option only switch code on, or only switch code off, to make it
11# possible to have a full compile-test. If necessary, you can include
12# "opt_lint.h" and check for COMPILING_LINT to get maximum code
13# coverage.
14#
15# All new options shall also be listed in either "conf/options" or
16# "<machine>/conf/options.<machine>". Options that affect a single
17# source-file <xxx>.[c|s] should be directed into "opt_<xxx>.h", while
18# options that affect multiple files should either go in
19# "opt_global.h" if this is a kernel-wide option (used just about
20# everywhere), or in "opt_<option-name-in-lower-case>.h" if it affect
21# only some files. Note that the effect of listing only an option
22# without a header-file-name in conf/options (and cousins) is that the
23# last convention is followed.
24#
25# This handling scheme is not yet fully implemented.
26#
27#
28# Format of this file:
29# Option name filename
30#
31# If filename is missing, the default is
32# opt_<name-of-option-in-lower-case>.h
33
34# Adaptec Array Controller driver options
984263bc
MD
35AAC_DEBUG opt_aac.h # Debugging levels:
36 # 0 - quiet, only emit warnings
37 # 1 - noisy, emit major function
38 # points and things done
39 # 2 - extremely noisy, emit trace
40 # items in loops, etc.
41
42# Adaptec aic7xxx SCSI controller options
43AHC_ALLOW_MEMIO opt_aic7xxx.h # Allow PCI devices to use memory
44 # mapped I/O
45
46AHC_TMODE_ENABLE opt_aic7xxx.h # Bitmap of units to enable
47 # targetmode operations.
48
49AHC_DUMP_EEPROM opt_aic7xxx.h # Dump the contents of our
50 # configuration prom.
51
52AHC_DEBUG opt_aic7xxx.h # Compile in Aic7xxx Debugging code.
53
54AHC_DEBUG_OPTS opt_aic7xxx.h # Aic7xxx driver debugging options.
55 # See sys/dev/aic7xxx/aic7xxx.h
56
57AHC_REG_PRETTY_PRINT opt_aic7xxx.h # Print register bitfields in debug
58 # output. Adds ~15k to driver.
59
60# Adaptec aic79xx SCSI controller options
61AHD_DEBUG opt_aic79xx.h # Compile in Aic79xx Debugging code.
62
63AHD_DEBUG_OPTS opt_aic79xx.h # Aic79xx driver debugging options.
64 # See sys/dev/aic7xxx/aic79xx.h
65
66AHD_TMODE_ENABLE opt_aic79xx.h # Bitmap of units to enable
67 # targetmode operations.
68
69AHD_REG_PRETTY_PRINT opt_aic79xx.h # Print register bitfields in debug
70 # output. Adds ~15k to driver.
71
72ADW_ALLOW_MEMIO opt_adw.h # Allow PCI devices to use memory
73 # mapped I/O
033d7ef0 74TWA_DEBUG opt_twa.h
4ad6607f 75TWA_FLASH_FIRMWARE opt_twa.h
984263bc 76
bf3e6b54
DR
77#options for ACPI support
78ACPI_DEBUG opt_acpi.h
79ACPI_NO_SEMAPHORES opt_acpi.h
bf3e6b54 80
984263bc 81# Miscellaneous options.
db37e804 82COMPAT_DF12 opt_compatdf12.h
984263bc
MD
83COMPAT_43 opt_compat.h
84COMPAT_SUNOS opt_compat.h
85COMPILING_LINT opt_lint.h
86CY_PCI_FASTINTR
87DDB
b1e04573 88DDB_TRACE
984263bc
MD
89DDB_UNATTENDED opt_ddb.h
90GDB_REMOTE_CHAT opt_ddb.h
91HW_WDOG
92KTRACE
93LIBICONV
94MD_NSECT opt_md.h
95MD_ROOT opt_md.h
96MD_ROOT_SIZE opt_md.h
984263bc
MD
97NSWAPDEV opt_swap.h
98NSWBUF_MIN opt_swap.h
99PPS_SYNC opt_ntp.h
100QUOTA
984263bc
MD
101SUIDDIR opt_suiddir.h
102SYSVMSG opt_sysvipc.h
103SYSVSEM opt_sysvipc.h
104SYSVSHM opt_sysvipc.h
105SHMALL opt_sysvipc.h
106SHMMAX opt_sysvipc.h
107SHMMAXPGS opt_sysvipc.h
108SHMMIN opt_sysvipc.h
109SHMMNI opt_sysvipc.h
110SHMSEG opt_sysvipc.h
111SEMMAP opt_sysvipc.h
112SEMMNI opt_sysvipc.h
113SEMMNS opt_sysvipc.h
114SEMMNU opt_sysvipc.h
115SEMMSL opt_sysvipc.h
116SEMOPM opt_sysvipc.h
117SEMUME opt_sysvipc.h
118MSGMNB opt_sysvipc.h
119MSGMNI opt_sysvipc.h
120MSGSEG opt_sysvipc.h
121MSGSSZ opt_sysvipc.h
122MSGTQL opt_sysvipc.h
123UCONSOLE
124ICMP_BANDLIM
125VFS_AIO
126DIRECTIO opt_directio.h
127
128# POSIX kernel options
129P1003_1B opt_posix.h
130_KPOSIX_PRIORITY_SCHEDULING opt_posix.h
131_KPOSIX_VERSION opt_posix.h
132
133# Do we want the config file compiled into the kernel?
134INCLUDE_CONFIG_FILE opt_config.h
135
136# Options for static file systems. These should only be used at config
137# time, since the corresponding lkms cannot work if there are any static
138# dependencies. Unusability is enforced by hiding the defines for the
139# options in a never-included header.
140EXT2FS opt_dontuse.h
141FDESC opt_dontuse.h
984263bc
MD
142MFS opt_dontuse.h
143MSDOSFS opt_dontuse.h
144NULLFS opt_dontuse.h
145PORTAL opt_dontuse.h
146PROCFS opt_dontuse.h
b79bcbd0 147UDF opt_dontuse.h
984263bc
MD
148NTFS opt_dontuse.h
149
150# These static filesystems has one slightly bogus static dependency in
151# sys/i386/i386/autoconf.c. If any of these filesystems are
152# statically compiled into the kernel, code for mounting them as root
153# filesystems will be enabled - but look below. Boot-code is purposely
154# unavailable for the LKM-based versions.
984263bc
MD
155CD9660
156FFS
157NFS
158NWFS
159
160# If you are following the conditions in the copyright,
161# you can enable soft-updates which will speed up a lot of thigs
162# and make the system safer from crashes at the same time.
163# otherwise a STUB module will be compiled in.
164SOFTUPDATES opt_ffs.h
165
166# Enable fast hash lookups for large directories on UFS-based filesystems.
167UFS_DIRHASH opt_ufs.h
168
169# The above static dependencies are planned removed, with a
170# <filesystem>_ROOT option to control if it usable as root. This list
171# allows these options to be present in config files already (though
172# they won't make any difference yet).
984263bc
MD
173FFS_ROOT opt_ffs.h
174NFS_ROOT opt_nfsroot.h
175
176# The union static file system has bogus static dependencies, so it isn't
177# hidden yet.
178UNION
179
180# Options used only in subr_param.c.
181HZ opt_param.h
182MAXFILES opt_param.h
183NBUF opt_param.h
184NMBCLUSTERS opt_param.h
185NMBUFS opt_param.h
186NSFBUFS opt_param.h
187VM_BCACHE_SIZE_MAX opt_param.h
188VM_SWZONE_SIZE_MAX opt_param.h
189MAXUSERS
190DFLDSIZ opt_param.h
191MAXDSIZ opt_param.h
192MAXSSIZ opt_param.h
193
194# Generic SCSI options.
195CAM_MAX_HIGHPOWER opt_cam.h
196CAMDEBUG opt_cam.h
197CAM_DEBUG_DELAY opt_cam.h
198CAM_DEBUG_BUS opt_cam.h
199CAM_DEBUG_TARGET opt_cam.h
200CAM_DEBUG_LUN opt_cam.h
201CAM_DEBUG_FLAGS opt_cam.h
202SCSI_DELAY opt_scsi.h
203SCSI_NO_SENSE_STRINGS opt_scsi.h
204SCSI_NO_OP_STRINGS opt_scsi.h
205
206# Options used only in cam/scsi/scsi_cd.c
207CHANGER_MIN_BUSY_SECONDS opt_cd.h
208CHANGER_MAX_BUSY_SECONDS opt_cd.h
209
210# Options used only in cam/scsi/scsi_sa.c.
211SA_IO_TIMEOUT opt_sa.h
212SA_SPACE_TIMEOUT opt_sa.h
213SA_REWIND_TIMEOUT opt_sa.h
214SA_ERASE_TIMEOUT opt_sa.h
215SA_1FM_AT_EOD opt_sa.h
216
217# Options used only in cam/scsi/scsi_pt.c
218SCSI_PT_DEFAULT_TIMEOUT opt_pt.h
219
220# Options used only in cam/scsi/scsi_ses.c
221SES_ENABLE_PASSTHROUGH opt_ses.h
222
223# Options used in dev/sym/ (Symbios SCSI driver).
224SYM_SETUP_LP_PROBE_MAP opt_sym.h #-Low Priority Probe Map (bits)
225 # Allows the ncr to take precedence
226 # 1 (1<<0) -> 810a, 860
227 # 2 (1<<1) -> 825a, 875, 885, 895
228 # 4 (1<<2) -> 895a, 896, 1510d
229SYM_SETUP_SCSI_DIFF opt_sym.h #-HVD support for 825a, 875, 885
230 # disabled:0 (default), enabled:1
231SYM_SETUP_PCI_PARITY opt_sym.h #-PCI parity checking
232 # disabled:0, enabled:1 (default)
233SYM_SETUP_MAX_LUN opt_sym.h #-Number of LUNs supported
234 # default:8, range:[1..64]
235
236# Options used only in pci/ncr.c
237SCSI_NCR_DEBUG opt_ncr.h
238SCSI_NCR_MAX_SYNC opt_ncr.h
239SCSI_NCR_MAX_WIDE opt_ncr.h
240SCSI_NCR_MYADDR opt_ncr.h
241
242# Options used only in pci/isp_pci.c
243ISP_TARGET_MODE opt_isp.h
244
245# Options used in the 'ata' ATA/ATAPI driver
246ATA_STATIC_ID opt_ata.h
247
248# Net stuff.
4d723e5a
JS
249# altq stuff
250ALTQ opt_global.h
251ALTQ_CBQ opt_altq.h
252ALTQ_RED opt_altq.h
253ALTQ_RIO opt_altq.h
254ALTQ_HFSC opt_altq.h
255ALTQ_PRIQ opt_altq.h
256ALTQ_NOPCC opt_altq.h
257ALTQ_DEBUG opt_altq.h
258
984263bc
MD
259ACCEPT_FILTER_DATA
260ACCEPT_FILTER_HTTP
261BOOTP opt_bootp.h
262BOOTP_COMPAT opt_bootp.h
263BOOTP_NFSROOT opt_bootp.h
264BOOTP_NFSV3 opt_bootp.h
265BOOTP_WIRED_TO opt_bootp.h
984263bc
MD
266ETHER_II opt_ef.h
267ETHER_8023 opt_ef.h
268ETHER_8022 opt_ef.h
269ETHER_SNAP opt_ef.h
270MROUTING opt_mrouting.h
f1f552f6 271PIM opt_mrouting.h
984263bc
MD
272INET opt_inet.h
273INET6 opt_inet6.h
274IPSEC opt_ipsec.h
275IPSEC_ESP opt_ipsec.h
276IPSEC_DEBUG opt_ipsec.h
277IPSEC_FILTERGIF opt_ipsec.h
278FAST_IPSEC opt_ipsec.h
279IPDIVERT
280DUMMYNET opt_ipdn.h
281IPFILTER opt_ipfilter.h
282IPFILTER_LOG opt_ipfilter.h
283IPFILTER_DEFAULT_BLOCK opt_ipfilter.h
284IPFIREWALL opt_ipfw.h
285IPFW2 opt_ipfw.h
286IPFIREWALL_VERBOSE opt_ipfw.h
287IPFIREWALL_VERBOSE_LIMIT opt_ipfw.h
288IPFIREWALL_DEFAULT_TO_ACCEPT opt_ipfw.h
289IPFIREWALL_FORWARD opt_ipfw.h
290IPV6FIREWALL opt_ip6fw.h
291IPV6FIREWALL_VERBOSE opt_ip6fw.h
292IPV6FIREWALL_VERBOSE_LIMIT opt_ip6fw.h
293IPV6FIREWALL_DEFAULT_TO_ACCEPT opt_ip6fw.h
294IPSTEALTH
295IPX opt_ipx.h
296IPXIP opt_ipx.h
297IPTUNNEL opt_ipx.h
298LIBMCHAIN
299NCP opt_ncp.h
300NETATALK opt_atalk.h
301NS opt_ns.h
302PPP_BSDCOMP opt_ppp.h
303PPP_DEFLATE opt_ppp.h
304PPP_FILTER opt_ppp.h
984263bc
MD
305SLIP_IFF_OPTS opt_slip.h
306TCPDEBUG
307TCP_DROP_SYNFIN opt_tcp_input.h
6ca1a1cd 308
984263bc
MD
309XBONEHACK
310MBUF_STRESS_TEST opt_mbuf_stress_test.h
311
312# Netgraph(4). Use option NETGRAPH to enable the base netgraph code.
313# Each netgraph node type can be either be compiled into the kernel
314# or loaded dynamically. To get the former, include the corresponding
315# option below. Each type has its own man page, e.g. ng_async(8).
316NETGRAPH
317NETGRAPH_ASYNC opt_netgraph.h
318NETGRAPH_BPF opt_netgraph.h
319NETGRAPH_BRIDGE opt_netgraph.h
320NETGRAPH_CISCO opt_netgraph.h
321NETGRAPH_ECHO opt_netgraph.h
322NETGRAPH_ETHER opt_netgraph.h
323NETGRAPH_FRAME_RELAY opt_netgraph.h
324NETGRAPH_HOLE opt_netgraph.h
325NETGRAPH_IFACE opt_netgraph.h
326NETGRAPH_KSOCKET opt_netgraph.h
327NETGRAPH_LMI opt_netgraph.h
328NETGRAPH_L2TP opt_netgraph.h
329# MPPC compression requires proprietary files (not included)
330NETGRAPH_MPPC_COMPRESSION opt_netgraph.h
331NETGRAPH_MPPC_ENCRYPTION opt_netgraph.h
332NETGRAPH_ONE2MANY opt_netgraph.h
333NETGRAPH_PPP opt_netgraph.h
334NETGRAPH_PPPOE opt_netgraph.h
335NETGRAPH_PPTPGRE opt_netgraph.h
336NETGRAPH_RFC1490 opt_netgraph.h
337NETGRAPH_SOCKET opt_netgraph.h
338NETGRAPH_TEE opt_netgraph.h
339NETGRAPH_TTY opt_netgraph.h
340NETGRAPH_UI opt_netgraph.h
341NETGRAPH_VJC opt_netgraph.h
342
343# DRM options
344DRM_DEBUG opt_drm.h
25b5b94d 345DRM_LINUX opt_drm.h
984263bc
MD
346
347# ATM (HARP version)
348ATM_CORE opt_atm.h
349ATM_IP opt_atm.h
350ATM_SIGPVC opt_atm.h
351ATM_SPANS opt_atm.h
352ATM_UNI opt_atm.h
353
354# XXX Conflict: # of devices vs network protocol (Native ATM).
355# This makes "atm.h" unusable.
356NATM opt_natm.h
357
984263bc
MD
358# DPT driver debug flags
359DPT_MEASURE_PERFORMANCE opt_dpt.h
360DPT_HANDLE_TIMEOUTS opt_dpt.h
361DPT_TIMEOUT_FACTOR opt_dpt.h
362DPT_LOST_IRQ opt_dpt.h
363DPT_RESET_HBA opt_dpt.h
364
984263bc
MD
365# Misc debug flags. Most of these should probably be replaced with
366# 'DEBUG', and then let people recompile just the interesting modules
367# with 'make CC="cc -DDEBUG"'.
368CLUSTERDEBUG opt_debug_cluster.h
369DEBUG_1284 opt_ppb_1284.h
370VP0_DEBUG opt_vpo.h
371LPT_DEBUG opt_lpt.h
372PLIP_DEBUG opt_plip.h
373LOCKF_DEBUG opt_debug_lockf.h
374LOUTB opt_debug_outb.h
375NPX_DEBUG opt_debug_npx.h
376NETATALKDEBUG opt_atalk.h
377SI_DEBUG opt_debug_si.h
378
379# Fb options
380FB_DEBUG opt_fb.h
381FB_INSTALL_CDEV opt_fb.h
382
383# ppbus related options
384PERIPH_1284 opt_ppb_1284.h
385DONTPROBE_1284 opt_ppb_1284.h
386
387# smbus related options
388ENABLE_ALART opt_intpm.h
389
390# These cause changes all over the kernel
8aca2bd4 391KMALLOC_ONLY opt_global.h
984263bc
MD
392BLKDEV_IOSIZE opt_global.h
393DEBUG opt_global.h
394DEBUG_LOCKS opt_global.h
395DEBUG_VFS_LOCKS opt_global.h
02d8a449 396DEBUG_CRIT_SECTIONS opt_global.h
984263bc 397DIAGNOSTIC opt_global.h
984263bc
MD
398INVARIANTS opt_global.h
399SIMPLELOCK_DEBUG opt_global.h
400VFS_BIO_DEBUG opt_global.h
f7bc9806 401DEBUG_INTERRUPTS opt_global.h
a7bc7c1d 402SOCKBUF_DEBUG opt_global.h
e8f15168 403PANIC_DEBUG opt_global.h
984263bc 404
07522099
MD
405# Sample system/interrupt PC
406DEBUG_PCTRACK opt_pctrack.h
407
984263bc 408# These are VM related options
984263bc 409NO_SWAPPING opt_vm.h
984263bc
MD
410PQ_CACHESIZE opt_vmpage.h
411
412# Standard SMP options
413SMP opt_global.h
414
415# sys/netkey
416KEY
417
418# Size of the kernel message buffer
419MSGBUF_SIZE opt_msgbuf.h
420
421# PCI related options
422PCI_QUIET opt_pci.h
423PCI_ENABLE_IO_MODES opt_pci.h
dc5a7bd2 424COMPAT_OLDPCI
984263bc
MD
425
426# NFS options
427NFS_MINATTRTIMO opt_nfs.h
428NFS_MAXATTRTIMO opt_nfs.h
429NFS_MINDIRATTRTIMO opt_nfs.h
430NFS_MAXDIRATTRTIMO opt_nfs.h
431NFS_GATHERDELAY opt_nfs.h
432NFS_UIDHASHSIZ opt_nfs.h
433NFS_WDELAYHASHSIZ opt_nfs.h
434NFS_MUIDHASHSIZ opt_nfs.h
435NFS_NOSERVER opt_nfs.h
436NFS_DEBUG opt_nfs.h
437
438# For the Bt848/Bt848A/Bt849/Bt878/Bt879 driver
984263bc
MD
439BROOKTREE_SYSTEM_DEFAULT opt_bktr.h
440BROOKTREE_ALLOC_PAGES opt_bktr.h
441BKTR_OVERRIDE_CARD opt_bktr.h
442BKTR_OVERRIDE_TUNER opt_bktr.h
443BKTR_OVERRIDE_DBX opt_bktr.h
444BKTR_OVERRIDE_MSP opt_bktr.h
445BKTR_SYSTEM_DEFAULT opt_bktr.h
446BKTR_ALLOC_PAGES opt_bktr.h
447BKTR_USE_PLL opt_bktr.h
448BKTR_GPIO_ACCESS opt_bktr.h
449BKTR_NO_MSP_RESET opt_bktr.h
450BKTR_430_FX_MODE opt_bktr.h
451BKTR_SIS_VIA_MODE opt_bktr.h
a35cc233 452BKTR_NEW_MSP34XX_DRIVER opt_bktr.h
984263bc
MD
453
454# meteor opt_meteor.h
455METEOR_ALLOC_PAGES opt_meteor.h
456METEOR_TEST_VIDEO opt_meteor.h
457METEOR_SYSTEM_DEFAULT opt_meteor.h
458METEOR_DEALLOC_PAGES opt_meteor.h
459METEOR_DEALLOC_ABOVE opt_meteor.h
460
461# Various mi ISA bus flags
073641b9 462COMPAT_OLDISA opt_compat_oldisa.h
984263bc
MD
463COM_ESP opt_sio.h
464COM_MULTIPORT opt_sio.h
465BREAK_TO_DEBUGGER opt_comconsole.h
466ALT_BREAK_TO_DEBUGGER opt_comconsole.h
467
468# Include tweaks for running under the SimOS machine simulator.
469SIMOS opt_simos.h
470
471# options for bus/device framework
472BUS_DEBUG opt_bus.h
473DEVICE_SYSCTLS opt_bus.h
474
475# options for USB support
984263bc
MD
476OHCI_DEBUG opt_usb.h
477USB_DEBUG opt_usb.h
984263bc
MD
478
479# Vinum options
480VINUMDEBUG opt_vinum.h
481
482# Embedded system options
483UKBD_DFLT_KEYMAP opt_ukbd.h
484INIT_PATH opt_init_path.h
485
486ROOTDEVNAME opt_rootdevname.h
487
488FDC_DEBUG opt_fdc.h
489PCFCLOCK_VERBOSE opt_pcfclock.h
490PCFCLOCK_MAX_RETRIES opt_pcfclock.h
491
492# Polling device handling
2b71c8f1 493DEVICE_POLLING opt_polling.h
984263bc
MD
494
495# options for ubsec driver
496UBSEC_DEBUG opt_ubsec.h
497UBSEC_RNDTEST opt_ubsec.h
498UBSEC_NO_RNG opt_ubsec.h
499
500# options for hifn driver
501HIFN_DEBUG opt_hifn.h
502HIFN_RNDTEST opt_hifn.h
503HIFN_NO_RNG opt_hifn.h
1f18ea8c 504
81540c2d
EN
505# KTR options
506KTR opt_global.h
d3776285
MD
507KTR_ALL opt_ktr.h
508KTR_TOKENS opt_ktr.h
a7bc7c1d 509KTR_MEMORY opt_ktr.h
05bd2b9e 510KTR_USB_MEMORY opt_ktr.h
d3776285
MD
511KTR_IPIQ opt_ktr.h
512KTR_MSGPORT opt_ktr.h
81540c2d
EN
513KTR_ENTRIES opt_global.h
514KTR_VERBOSE opt_ktr.h
57aa743c
MD
515KTR_GIANT_CONTENTION opt_ktr.h
516KTR_SPIN_CONTENTION opt_ktr.h
81540c2d 517
1f18ea8c
JS
518# ed driver
519ED_NO_MIIBUS opt_ed.h
acffed4b
JS
520
521# wi driver
522WI_SYMBOL_FIRMWARE opt_wi.h
ca9d2ae7
HS
523
524# dcons options
525DCONS_BUF_SIZE opt_dcons.h
526DCONS_POLL_HZ opt_dcons.h
527DCONS_FORCE_CONSOLE opt_dcons.h
528DCONS_FORCE_GDB opt_dcons.h
529
4ad6607f 530# deprecated drivers and options
6f535fd5 531I_WANT_DEPRECATED_STUFF opt_deprecated.h
78812139
EN
532
533# SCTP
534SCTP opt_sctp.h
535SCTP_DEBUG opt_sctp.h
78812139
EN
536SCTP_USE_ADLER32 opt_sctp.h
537SCTP_HIGH_SPEED opt_sctp.h
a898ea1f 538SCTP_STAT_LOGGING opt_sctp.h
78812139
EN
539SCTP_CWND_LOGGING opt_sctp.h
540SCTP_BLK_LOGGING opt_sctp.h
541SCTP_STR_LOGGING opt_sctp.h
542SCTP_FR_LOGGING opt_sctp.h
543SCTP_MAP_LOGGING opt_sctp.h