xref: /freebsd/sys/conf/options (revision af23369a6deaaeb612ab266eb88b8bb8d560c322)
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 affects 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
33AAC_DEBUG		opt_aac.h
34AACRAID_DEBUG		opt_aacraid.h
35AHC_ALLOW_MEMIO		opt_aic7xxx.h
36AHC_TMODE_ENABLE	opt_aic7xxx.h
37AHC_DUMP_EEPROM		opt_aic7xxx.h
38AHC_DEBUG		opt_aic7xxx.h
39AHC_DEBUG_OPTS		opt_aic7xxx.h
40AHC_REG_PRETTY_PRINT	opt_aic7xxx.h
41AHD_DEBUG		opt_aic79xx.h
42AHD_DEBUG_OPTS		opt_aic79xx.h
43AHD_TMODE_ENABLE	opt_aic79xx.h
44AHD_REG_PRETTY_PRINT	opt_aic79xx.h
45
46# Debugging options.
47ALT_BREAK_TO_DEBUGGER	opt_kdb.h
48BREAK_TO_DEBUGGER	opt_kdb.h
49BUF_TRACKING		opt_global.h
50DDB
51DDB_BUFR_SIZE	opt_ddb.h
52DDB_CAPTURE_DEFAULTBUFSIZE	opt_ddb.h
53DDB_CAPTURE_MAXBUFSIZE	opt_ddb.h
54DDB_CTF		opt_ddb.h
55DDB_NUMSYM	opt_ddb.h
56EARLY_PRINTF	opt_global.h
57FULL_BUF_TRACKING	opt_global.h
58GDB
59KDB		opt_global.h
60KDB_TRACE	opt_kdb.h
61KDB_UNATTENDED	opt_kdb.h
62KLD_DEBUG	opt_kld.h
63NUM_CORE_FILES	opt_global.h
64QUEUE_MACRO_DEBUG_TRACE	opt_global.h
65QUEUE_MACRO_DEBUG_TRASH	opt_global.h
66SYSCTL_DEBUG	opt_sysctl.h
67TEXTDUMP_PREFERRED	opt_ddb.h
68TEXTDUMP_VERBOSE	opt_ddb.h
69TSLOG	opt_global.h
70TSLOGSIZE	opt_global.h
71
72# Miscellaneous options.
73ALQ
74ALTERA_SDCARD_FAST_SIM	opt_altera_sdcard.h
75ATSE_CFI_HACK	opt_cfi.h
76AUDIT		opt_global.h
77BOOTHOWTO	opt_global.h
78BOOTVERBOSE	opt_global.h
79CALLOUT_PROFILING
80CAPABILITIES	opt_capsicum.h
81CAPABILITY_MODE	opt_capsicum.h
82CC_CDG		opt_global.h
83CC_CHD		opt_global.h
84CC_CUBIC	opt_global.h
85CC_DEFAULT	opt_cc.h
86CC_DCTCP	opt_global.h
87CC_HD		opt_global.h
88CC_HTCP		opt_global.h
89CC_NEWRENO	opt_global.h
90CC_VEGAS	opt_global.h
91COMPAT_43	opt_global.h
92COMPAT_43TTY	opt_global.h
93COMPAT_FREEBSD4	opt_global.h
94COMPAT_FREEBSD5	opt_global.h
95COMPAT_FREEBSD6	opt_global.h
96COMPAT_FREEBSD7	opt_global.h
97COMPAT_FREEBSD9	opt_global.h
98COMPAT_FREEBSD10	opt_global.h
99COMPAT_FREEBSD11	opt_global.h
100COMPAT_FREEBSD12	opt_global.h
101COMPAT_FREEBSD13	opt_global.h
102COMPAT_LINUXKPI	opt_dontuse.h
103COMPILING_LINT	opt_global.h
104CY_PCI_FASTINTR
105DEADLKRES	opt_watchdog.h
106EXPERIMENTAL	opt_global.h
107DIRECTIO
108FILEMON		opt_dontuse.h
109FFCLOCK
110FULL_PREEMPTION	opt_sched.h
111GZIO		opt_gzio.h
112IMGACT_BINMISC		opt_dontuse.h
113IPI_PREEMPTION	opt_sched.h
114GEOM_BDE	opt_geom.h
115GEOM_CACHE	opt_geom.h
116GEOM_CONCAT	opt_geom.h
117GEOM_ELI	opt_geom.h
118GEOM_GATE	opt_geom.h
119GEOM_JOURNAL	opt_geom.h
120GEOM_LABEL	opt_geom.h
121GEOM_LABEL_GPT	opt_geom.h
122GEOM_LINUX_LVM	opt_geom.h
123GEOM_MAP	opt_geom.h
124GEOM_MIRROR	opt_geom.h
125GEOM_MOUNTVER	opt_geom.h
126GEOM_MULTIPATH	opt_geom.h
127GEOM_NOP	opt_geom.h
128GEOM_PART_APM	opt_geom.h
129GEOM_PART_BSD	opt_geom.h
130GEOM_PART_BSD64	opt_geom.h
131GEOM_PART_EBR	opt_geom.h
132GEOM_PART_GPT	opt_geom.h
133GEOM_PART_LDM	opt_geom.h
134GEOM_PART_MBR	opt_geom.h
135GEOM_PART_VTOC8	opt_geom.h
136GEOM_RAID	opt_geom.h
137GEOM_RAID3	opt_geom.h
138GEOM_SHSEC	opt_geom.h
139GEOM_STRIPE	opt_geom.h
140GEOM_UZIP	opt_geom.h
141GEOM_UZIP_DEBUG	opt_geom.h
142GEOM_VINUM	opt_geom.h
143GEOM_VIRSTOR	opt_geom.h
144GEOM_ZERO	opt_geom.h
145IFLIB		opt_iflib.h
146KDTRACE_HOOKS	opt_global.h
147KDTRACE_FRAME	opt_kdtrace.h
148KN_HASHSIZE	opt_kqueue.h
149KSTACK_MAX_PAGES
150KSTACK_PAGES
151KSTACK_USAGE_PROF
152KTRACE
153KTRACE_REQUEST_POOL	opt_ktrace.h
154LIBICONV
155MAC		opt_global.h
156MAC_BIBA	opt_dontuse.h
157MAC_BSDEXTENDED	opt_dontuse.h
158MAC_DDB		opt_dontuse.h
159MAC_IFOFF	opt_dontuse.h
160MAC_LOMAC	opt_dontuse.h
161MAC_MLS		opt_dontuse.h
162MAC_NONE	opt_dontuse.h
163MAC_NTPD	opt_dontuse.h
164MAC_PARTITION	opt_dontuse.h
165MAC_PORTACL	opt_dontuse.h
166MAC_PRIORITY	opt_dontuse.h
167MAC_SEEOTHERUIDS	opt_dontuse.h
168MAC_STATIC	opt_mac.h
169MAC_STUB	opt_dontuse.h
170MAC_TEST	opt_dontuse.h
171MAC_VERIEXEC	opt_dontuse.h
172MAC_VERIEXEC_SHA1	opt_dontuse.h
173MAC_VERIEXEC_SHA256	opt_dontuse.h
174MAC_VERIEXEC_SHA384	opt_dontuse.h
175MAC_VERIEXEC_SHA512	opt_dontuse.h
176MD_ROOT		opt_md.h
177MD_ROOT_FSTYPE	opt_md.h
178MD_ROOT_READONLY	opt_md.h
179MD_ROOT_SIZE	opt_md.h
180MD_ROOT_MEM	opt_md.h
181MFI_DEBUG	opt_mfi.h
182MFI_DECODE_LOG	opt_mfi.h
183MPROF_BUFFERS	opt_mprof.h
184MPROF_HASH_SIZE	opt_mprof.h
185NEW_PCIB	opt_global.h
186NO_ADAPTIVE_MUTEXES	opt_adaptive_mutexes.h
187NO_ADAPTIVE_RWLOCKS
188NO_ADAPTIVE_SX
189NO_OBSOLETE_CODE	opt_global.h
190NO_SYSCTL_DESCR	opt_global.h
191NSWBUF_MIN	opt_param.h
192MBUF_PACKET_ZONE_DISABLE	opt_global.h
193PANIC_REBOOT_WAIT_TIME	opt_panic.h
194PCI_HP		opt_pci.h
195PCI_IOV		opt_global.h
196PPC_DEBUG	opt_ppc.h
197PPC_PROBE_CHIPSET	opt_ppc.h
198PPS_SYNC	opt_ntp.h
199PREEMPTION	opt_sched.h
200QUOTA
201SCHED_4BSD	opt_sched.h
202SCHED_STATS	opt_sched.h
203SCHED_ULE	opt_sched.h
204SLEEPQUEUE_PROFILING
205SLHCI_DEBUG	opt_slhci.h
206STACK		opt_stack.h
207SUIDDIR
208MSGMNB		opt_sysvipc.h
209MSGMNI		opt_sysvipc.h
210MSGSEG		opt_sysvipc.h
211MSGSSZ		opt_sysvipc.h
212MSGTQL		opt_sysvipc.h
213SEMMNI		opt_sysvipc.h
214SEMMNS		opt_sysvipc.h
215SEMMNU		opt_sysvipc.h
216SEMMSL		opt_sysvipc.h
217SEMOPM		opt_sysvipc.h
218SEMUME		opt_sysvipc.h
219SHMALL		opt_sysvipc.h
220SHMMAX		opt_sysvipc.h
221SHMMAXPGS	opt_sysvipc.h
222SHMMIN		opt_sysvipc.h
223SHMMNI		opt_sysvipc.h
224SHMSEG		opt_sysvipc.h
225SYSVMSG		opt_sysvipc.h
226SYSVSEM		opt_sysvipc.h
227SYSVSHM		opt_sysvipc.h
228SW_WATCHDOG	opt_watchdog.h
229TCPHPTS         opt_inet.h
230TURNSTILE_PROFILING
231UMTX_PROFILING
232UMTX_CHAINS	opt_global.h
233VERBOSE_SYSINIT
234ZSTDIO		opt_zstdio.h
235
236# Sanitizers
237COVERAGE	opt_global.h
238KASAN		opt_global.h
239KCOV
240KCSAN		opt_global.h
241KMSAN		opt_global.h
242KUBSAN		opt_global.h
243
244# POSIX kernel options
245P1003_1B_MQUEUE			opt_posix.h
246P1003_1B_SEMAPHORES		opt_posix.h
247_KPOSIX_PRIORITY_SCHEDULING	opt_posix.h
248
249# Do we want the config file compiled into the kernel?
250INCLUDE_CONFIG_FILE	opt_config.h
251
252# Options for static filesystems.  These should only be used at config
253# time, since the corresponding lkms cannot work if there are any static
254# dependencies.  Unusability is enforced by hiding the defines for the
255# options in a never-included header.
256AUTOFS		opt_dontuse.h
257CD9660		opt_dontuse.h
258EXT2FS		opt_dontuse.h
259FDESCFS		opt_dontuse.h
260FFS		opt_dontuse.h
261FUSEFS		opt_dontuse.h
262MSDOSFS		opt_dontuse.h
263NULLFS		opt_dontuse.h
264PROCFS		opt_dontuse.h
265PSEUDOFS	opt_dontuse.h
266SMBFS		opt_dontuse.h
267TARFS		opt_dontuse.h
268TMPFS		opt_dontuse.h
269UDF		opt_dontuse.h
270UNIONFS		opt_dontuse.h
271ZFS		opt_dontuse.h
272
273# Pseudofs debugging
274PSEUDOFS_TRACE	opt_pseudofs.h
275
276# Tarfs debugging
277TARFS_DEBUG	opt_tarfs.h
278
279# In-kernel GSS-API
280KGSSAPI		opt_kgssapi.h
281KGSSAPI_DEBUG	opt_kgssapi.h
282
283# These static filesystems have one slightly bogus static dependency in
284# sys/i386/i386/autoconf.c.  If any of these filesystems are
285# statically compiled into the kernel, code for mounting them as root
286# filesystems will be enabled - but look below.
287# NFSCL - client
288# NFSD - server
289NFSCL		opt_nfs.h
290NFSD		opt_nfs.h
291
292# filesystems and libiconv bridge
293CD9660_ICONV	opt_dontuse.h
294MSDOSFS_ICONV	opt_dontuse.h
295UDF_ICONV	opt_dontuse.h
296
297# If you are following the conditions in the copyright,
298# you can enable soft-updates which will speed up a lot of thigs
299# and make the system safer from crashes at the same time.
300# otherwise a STUB module will be compiled in.
301SOFTUPDATES	opt_ffs.h
302
303# On small, embedded systems, it can be useful to turn off support for
304# snapshots.  It saves about 30-40k for a feature that would be lightly
305# used, if it is used at all.
306NO_FFS_SNAPSHOT	opt_ffs.h
307
308# Enabling this option turns on support for Access Control Lists in UFS,
309# which can be used to support high security configurations.  Depends on
310# UFS_EXTATTR.
311UFS_ACL		opt_ufs.h
312
313# Enabling this option turns on support for extended attributes in UFS-based
314# filesystems, which can be used to support high security configurations
315# as well as new filesystem features.
316UFS_EXTATTR	opt_ufs.h
317UFS_EXTATTR_AUTOSTART	opt_ufs.h
318
319# Enable fast hash lookups for large directories on UFS-based filesystems.
320UFS_DIRHASH	opt_ufs.h
321
322# Enable gjournal-based UFS journal.
323UFS_GJOURNAL	opt_ufs.h
324
325# The below sentence is not in English, and neither is this one.
326# We plan to remove the static dependences above, with a
327# <filesystem>_ROOT option to control if it usable as root.  This list
328# allows these options to be present in config files already (though
329# they won't make any difference yet).
330NFS_ROOT	opt_nfsroot.h
331
332# SMB/CIFS requester
333NETSMB		opt_netsmb.h
334
335# Enable debugnet(4) networking support.
336DEBUGNET 	opt_global.h
337# Enable netdump(4) client support.
338NETDUMP 	opt_global.h
339# Enable netgdb(4) support.
340NETGDB 		opt_global.h
341
342# Options used only in subr_param.c.
343HZ		opt_param.h
344MAXFILES	opt_param.h
345NBUF		opt_param.h
346NSFBUFS		opt_param.h
347VM_BCACHE_SIZE_MAX	opt_param.h
348VM_SWZONE_SIZE_MAX	opt_param.h
349MAXUSERS
350DFLDSIZ		opt_param.h
351MAXDSIZ		opt_param.h
352MAXSSIZ		opt_param.h
353
354# Generic SCSI options.
355CAM_MAX_HIGHPOWER	opt_cam.h
356CAMDEBUG		opt_cam.h
357CAM_DEBUG_COMPILE	opt_cam.h
358CAM_DEBUG_DELAY		opt_cam.h
359CAM_DEBUG_BUS		opt_cam.h
360CAM_DEBUG_TARGET	opt_cam.h
361CAM_DEBUG_LUN		opt_cam.h
362CAM_DEBUG_FLAGS		opt_cam.h
363CAM_BOOT_DELAY		opt_cam.h
364CAM_IOSCHED_DYNAMIC	opt_cam.h
365CAM_IO_STATS		opt_cam.h
366CAM_TEST_FAILURE	opt_cam.h
367SCSI_DELAY		opt_scsi.h
368SCSI_NO_SENSE_STRINGS	opt_scsi.h
369SCSI_NO_OP_STRINGS	opt_scsi.h
370
371# Options used only in cam/ata/ata_da.c
372ATA_STATIC_ID		opt_ada.h
373
374# Options used only in cam/scsi/scsi_cd.c
375CHANGER_MIN_BUSY_SECONDS	opt_cd.h
376CHANGER_MAX_BUSY_SECONDS	opt_cd.h
377
378# Options used only in cam/scsi/scsi_da.c
379DA_TRACK_REFS		opt_da.h
380
381# Options used only in cam/scsi/scsi_sa.c.
382SA_IO_TIMEOUT		opt_sa.h
383SA_SPACE_TIMEOUT	opt_sa.h
384SA_REWIND_TIMEOUT	opt_sa.h
385SA_ERASE_TIMEOUT	opt_sa.h
386SA_1FM_AT_EOD		opt_sa.h
387
388# Options used only in cam/scsi/scsi_pt.c
389SCSI_PT_DEFAULT_TIMEOUT	opt_pt.h
390
391# Options used only in cam/scsi/scsi_ses.c
392SES_ENABLE_PASSTHROUGH	opt_ses.h
393
394# Options used in dev/sym/ (Symbios SCSI driver).
395SYM_SETUP_SCSI_DIFF	opt_sym.h	#-HVD support for 825a, 875, 885
396					# disabled:0 (default), enabled:1
397SYM_SETUP_PCI_PARITY	opt_sym.h	#-PCI parity checking
398					# disabled:0, enabled:1 (default)
399SYM_SETUP_MAX_LUN	opt_sym.h	#-Number of LUNs supported
400					# default:8, range:[1..64]
401
402# Options used only in dev/isp/*
403ISP_TARGET_MODE		opt_isp.h
404ISP_FW_CRASH_DUMP	opt_isp.h
405ISP_DEFAULT_ROLES	opt_isp.h
406ISP_INTERNAL_TARGET	opt_isp.h
407ISP_FCTAPE_OFF		opt_isp.h
408
409# Options used only in dev/iscsi
410ISCSI_INITIATOR_DEBUG	opt_iscsi_initiator.h
411
412# Net stuff.
413ACCEPT_FILTER_DATA
414ACCEPT_FILTER_DNS
415ACCEPT_FILTER_HTTP
416ALTQ			opt_global.h
417ALTQ_CBQ		opt_altq.h
418ALTQ_CDNR		opt_altq.h
419ALTQ_CODEL		opt_altq.h
420ALTQ_DEBUG		opt_altq.h
421ALTQ_HFSC		opt_altq.h
422ALTQ_FAIRQ		opt_altq.h
423ALTQ_NOPCC		opt_altq.h
424ALTQ_PRIQ		opt_altq.h
425ALTQ_RED		opt_altq.h
426ALTQ_RIO		opt_altq.h
427BOOTP			opt_bootp.h
428BOOTP_BLOCKSIZE		opt_bootp.h
429BOOTP_COMPAT		opt_bootp.h
430BOOTP_NFSROOT		opt_bootp.h
431BOOTP_NFSV3		opt_bootp.h
432BOOTP_WIRED_TO		opt_bootp.h
433DEVICE_POLLING
434DUMMYNET		opt_ipdn.h
435RATELIMIT		opt_ratelimit.h
436RATELIMIT_DEBUG		opt_ratelimit.h
437INET			opt_inet.h
438INET6			opt_inet6.h
439STATS			opt_global.h
440IPDIVERT
441IPFILTER		opt_ipfilter.h
442IPFILTER_DEFAULT_BLOCK	opt_ipfilter.h
443IPFILTER_LOG		opt_ipfilter.h
444IPFILTER_LOOKUP		opt_ipfilter.h
445IPFIREWALL		opt_ipfw.h
446IPFIREWALL_DEFAULT_TO_ACCEPT	opt_ipfw.h
447IPFIREWALL_NAT		opt_ipfw.h
448IPFIREWALL_NAT64	opt_ipfw.h
449IPFIREWALL_NPTV6	opt_ipfw.h
450IPFIREWALL_VERBOSE	opt_ipfw.h
451IPFIREWALL_VERBOSE_LIMIT	opt_ipfw.h
452IPFIREWALL_PMOD		opt_ipfw.h
453IPSEC			opt_ipsec.h
454IPSEC_DEBUG		opt_ipsec.h
455IPSEC_SUPPORT		opt_ipsec.h
456IPSTEALTH
457KERN_TLS
458KRPC
459LIBALIAS
460LIBMCHAIN
461MBUF_PROFILING
462MBUF_STRESS_TEST
463MROUTING		opt_mrouting.h
464NFSLOCKD
465NETLINK
466PF_DEFAULT_TO_DROP	opt_pf.h
467ROUTE_MPATH		opt_route.h
468ROUTETABLES		opt_route.h
469FIB_ALGO		opt_route.h
470RSS			opt_rss.h
471SLIP_IFF_OPTS		opt_slip.h
472TCPPCAP		opt_global.h
473SIFTR
474TCP_BLACKBOX		opt_global.h
475TCP_HHOOK		opt_global.h
476TCP_OFFLOAD		opt_inet.h # Enable code to dispatch TCP offloading
477TCP_RFC7413		opt_inet.h
478TCP_RFC7413_MAX_KEYS	opt_inet.h
479TCP_RFC7413_MAX_PSKS	opt_inet.h
480TCP_SIGNATURE		opt_ipsec.h
481VLAN_ARRAY		opt_vlan.h
482XDR
483XBONEHACK
484
485#
486# SCTP
487#
488SCTP			opt_sctp.h
489SCTP_SUPPORT		opt_sctp.h
490SCTP_DEBUG		opt_sctp.h # Enable debug printfs
491SCTP_LOCK_LOGGING	opt_sctp.h # Log to KTR lock activity
492SCTP_MBUF_LOGGING	opt_sctp.h # Log to KTR general mbuf aloc/free
493SCTP_MBCNT_LOGGING	opt_sctp.h # Log to KTR mbcnt activity
494SCTP_PACKET_LOGGING	opt_sctp.h # Log to a packet buffer last N packets
495SCTP_LTRACE_CHUNKS	opt_sctp.h # Log to KTR chunks processed
496SCTP_LTRACE_ERRORS	opt_sctp.h # Log to KTR error returns.
497SCTP_USE_PERCPU_STAT	opt_sctp.h # Use per cpu stats.
498SCTP_MCORE_INPUT	opt_sctp.h # Have multiple input threads for input mbufs
499SCTP_LOCAL_TRACE_BUF	opt_sctp.h # Use tracebuffer exported via sysctl
500SCTP_DETAILED_STR_STATS	opt_sctp.h # Use per PR-SCTP policy stream stats
501#
502#
503#
504
505# Netgraph(4). Use option NETGRAPH to enable the base netgraph code.
506# Each netgraph node type can be either be compiled into the kernel
507# or loaded dynamically. To get the former, include the corresponding
508# option below. Each type has its own man page, e.g. ng_async(4).
509NETGRAPH
510NETGRAPH_DEBUG		opt_netgraph.h
511NETGRAPH_ASYNC		opt_netgraph.h
512NETGRAPH_ATMLLC		opt_netgraph.h
513NETGRAPH_ATM_ATMPIF	opt_netgraph.h
514NETGRAPH_BLUETOOTH	opt_netgraph.h
515NETGRAPH_BLUETOOTH_BT3C	opt_netgraph.h
516NETGRAPH_BLUETOOTH_H4	opt_netgraph.h
517NETGRAPH_BLUETOOTH_HCI	opt_netgraph.h
518NETGRAPH_BLUETOOTH_L2CAP	opt_netgraph.h
519NETGRAPH_BLUETOOTH_SOCKET	opt_netgraph.h
520NETGRAPH_BLUETOOTH_UBT	opt_netgraph.h
521NETGRAPH_BLUETOOTH_UBTBCMFW	opt_netgraph.h
522NETGRAPH_BPF		opt_netgraph.h
523NETGRAPH_BRIDGE		opt_netgraph.h
524NETGRAPH_CAR		opt_netgraph.h
525NETGRAPH_CHECKSUM	opt_netgraph.h
526NETGRAPH_CISCO		opt_netgraph.h
527NETGRAPH_DEFLATE	opt_netgraph.h
528NETGRAPH_DEVICE		opt_netgraph.h
529NETGRAPH_ECHO		opt_netgraph.h
530NETGRAPH_EIFACE		opt_netgraph.h
531NETGRAPH_ETHER		opt_netgraph.h
532NETGRAPH_ETHER_ECHO	opt_netgraph.h
533NETGRAPH_FEC		opt_netgraph.h
534NETGRAPH_FRAME_RELAY	opt_netgraph.h
535NETGRAPH_GIF		opt_netgraph.h
536NETGRAPH_GIF_DEMUX	opt_netgraph.h
537NETGRAPH_HOLE		opt_netgraph.h
538NETGRAPH_IFACE		opt_netgraph.h
539NETGRAPH_IP_INPUT	opt_netgraph.h
540NETGRAPH_IPFW		opt_netgraph.h
541NETGRAPH_KSOCKET	opt_netgraph.h
542NETGRAPH_L2TP		opt_netgraph.h
543NETGRAPH_LMI		opt_netgraph.h
544NETGRAPH_MPPC_COMPRESSION	opt_netgraph.h
545NETGRAPH_MPPC_ENCRYPTION	opt_netgraph.h
546NETGRAPH_NAT		opt_netgraph.h
547NETGRAPH_NETFLOW	opt_netgraph.h
548NETGRAPH_ONE2MANY	opt_netgraph.h
549NETGRAPH_PATCH		opt_netgraph.h
550NETGRAPH_PIPE		opt_netgraph.h
551NETGRAPH_PPP		opt_netgraph.h
552NETGRAPH_PPPOE		opt_netgraph.h
553NETGRAPH_PPTPGRE	opt_netgraph.h
554NETGRAPH_PRED1		opt_netgraph.h
555NETGRAPH_RFC1490	opt_netgraph.h
556NETGRAPH_SOCKET		opt_netgraph.h
557NETGRAPH_SPLIT		opt_netgraph.h
558NETGRAPH_SPPP		opt_netgraph.h
559NETGRAPH_TAG		opt_netgraph.h
560NETGRAPH_TCPMSS		opt_netgraph.h
561NETGRAPH_TEE		opt_netgraph.h
562NETGRAPH_TTY		opt_netgraph.h
563NETGRAPH_UI		opt_netgraph.h
564NETGRAPH_VJC		opt_netgraph.h
565NETGRAPH_VLAN		opt_netgraph.h
566
567# NgATM options
568NGATM_ATM		opt_netgraph.h
569NGATM_ATMBASE		opt_netgraph.h
570NGATM_SSCOP		opt_netgraph.h
571NGATM_SSCFU		opt_netgraph.h
572NGATM_UNI		opt_netgraph.h
573NGATM_CCATM		opt_netgraph.h
574
575# DRM options
576DRM_DEBUG		opt_drm.h
577
578TI_SF_BUF_JUMBO		opt_ti.h
579TI_JUMBO_HDRSPLIT	opt_ti.h
580
581# Misc debug flags.  Most of these should probably be replaced with
582# 'DEBUG', and then let people recompile just the interesting modules
583# with 'make CC="cc -DDEBUG"'.
584DEBUG_1284		opt_ppb_1284.h
585LPT_DEBUG		opt_lpt.h
586PLIP_DEBUG		opt_plip.h
587LOCKF_DEBUG		opt_debug_lockf.h
588SI_DEBUG		opt_debug_si.h
589IFMEDIA_DEBUG		opt_ifmedia.h
590
591# Fb options
592FB_DEBUG		opt_fb.h
593
594# ppbus related options
595PERIPH_1284		opt_ppb_1284.h
596DONTPROBE_1284		opt_ppb_1284.h
597
598# smbus related options
599ENABLE_ALART		opt_intpm.h
600
601# These cause changes all over the kernel
602BLKDEV_IOSIZE		opt_global.h
603BURN_BRIDGES		opt_global.h
604DEBUG			opt_global.h
605DEBUG_LOCKS		opt_global.h
606DEBUG_VFS_LOCKS		opt_global.h
607DFLTPHYS		opt_global.h
608DIAGNOSTIC		opt_global.h
609INVARIANT_SUPPORT	opt_global.h
610INVARIANTS		opt_global.h
611KASSERT_PANIC_OPTIONAL	opt_global.h
612MAXCPU			opt_global.h
613MAXMEMDOM		opt_global.h
614MAXPHYS			opt_maxphys.h
615MCLSHIFT		opt_global.h
616MUTEX_NOINLINE		opt_global.h
617LOCK_PROFILING		opt_global.h
618MSIZE			opt_global.h
619REGRESSION		opt_global.h
620RWLOCK_NOINLINE		opt_global.h
621SX_NOINLINE		opt_global.h
622VFS_BIO_DEBUG		opt_global.h
623
624# These are VM related options
625VM_KMEM_SIZE		opt_vm.h
626VM_KMEM_SIZE_SCALE	opt_vm.h
627VM_KMEM_SIZE_MAX	opt_vm.h
628VM_NRESERVLEVEL		opt_vm.h
629VM_LEVEL_0_ORDER	opt_vm.h
630NO_SWAPPING		opt_vm.h
631MALLOC_MAKE_FAILURES	opt_vm.h
632MALLOC_PROFILE		opt_vm.h
633MALLOC_DEBUG_MAXZONES	opt_vm.h
634
635# The MemGuard replacement allocator used for tamper-after-free detection
636DEBUG_MEMGUARD		opt_vm.h
637
638# The RedZone malloc(9) protection
639DEBUG_REDZONE		opt_vm.h
640
641# Standard SMP options
642EARLY_AP_STARTUP	opt_global.h
643SMP			opt_global.h
644NUMA			opt_global.h
645
646# Size of the kernel message buffer
647MSGBUF_SIZE		opt_msgbuf.h
648
649# NFS options
650NFS_MINATTRTIMO		opt_nfs.h
651NFS_MAXATTRTIMO		opt_nfs.h
652NFS_MINDIRATTRTIMO	opt_nfs.h
653NFS_MAXDIRATTRTIMO	opt_nfs.h
654NFS_DEBUG		opt_nfs.h
655
656# TMPFS options
657TMPFS_PAGES_MINRESERVED		opt_tmpfs.h
658
659# Options for uart(4)
660UART_PPS_ON_CTS		opt_uart.h
661UART_POLL_FREQ		opt_uart.h
662UART_DEV_TOLERANCE_PCT	opt_uart.h
663
664# options for bus/device framework
665BUS_DEBUG		opt_bus.h
666
667# options for USB support
668USB_DEBUG		opt_usb.h
669USB_HOST_ALIGN		opt_usb.h
670USB_REQ_DEBUG		opt_usb.h
671USB_TEMPLATE		opt_usb.h
672USB_VERBOSE		opt_usb.h
673USB_DMA_SINGLE_ALLOC	opt_usb.h
674USB_EHCI_BIG_ENDIAN_DESC	opt_usb.h
675U3G_DEBUG		opt_u3g.h
676UKBD_DFLT_KEYMAP	opt_ukbd.h
677UPLCOM_INTR_INTERVAL	opt_uplcom.h
678UVSCOM_DEFAULT_OPKTSIZE	opt_uvscom.h
679UVSCOM_INTR_INTERVAL	opt_uvscom.h
680
681# options for the Realtek rtwn driver
682RTWN_DEBUG		opt_rtwn.h
683RTWN_WITHOUT_UCODE	opt_rtwn.h
684
685# Embedded system options
686INIT_PATH
687
688ROOTDEVNAME
689
690FDC_DEBUG 		opt_fdc.h
691PCFCLOCK_VERBOSE	opt_pcfclock.h
692PCFCLOCK_MAX_RETRIES	opt_pcfclock.h
693
694KTR			opt_global.h
695KTR_ALQ			opt_ktr.h
696KTR_MASK		opt_ktr.h
697KTR_CPUMASK		opt_ktr.h
698KTR_COMPILE		opt_global.h
699KTR_BOOT_ENTRIES	opt_global.h
700KTR_ENTRIES		opt_global.h
701KTR_VERBOSE		opt_ktr.h
702WITNESS			opt_global.h
703WITNESS_KDB		opt_witness.h
704WITNESS_NO_VNODE	opt_witness.h
705WITNESS_SKIPSPIN	opt_witness.h
706WITNESS_COUNT		opt_witness.h
707OPENSOLARIS_WITNESS	opt_global.h
708
709EPOCH_TRACE		opt_global.h
710
711# options for ACPI support
712ACPI_DEBUG		opt_acpi.h
713ACPI_MAX_TASKS		opt_acpi.h
714ACPI_MAX_THREADS	opt_acpi.h
715DEV_ACPI		opt_acpi.h
716ACPI_EARLY_EPYC_WAR	opt_acpi.h
717
718# options for IOMMU support
719IOMMU			opt_iommu.h
720
721# ISA support
722DEV_ISA			opt_isa.h
723ISAPNP			opt_dontuse.h
724
725# various 'device presence' options.
726DEV_BPF			opt_bpf.h
727DEV_CARP		opt_carp.h
728DEV_NETMAP		opt_global.h
729DEV_PCI			opt_pci.h
730DEV_PF			opt_pf.h
731DEV_PFLOG		opt_pf.h
732DEV_PFSYNC		opt_pf.h
733DEV_SPLASH		opt_splash.h
734DEV_VLAN		opt_vlan.h
735
736# bce driver
737BCE_DEBUG		opt_bce.h
738BCE_NVRAM_WRITE_SUPPORT	opt_bce.h
739
740SOCKBUF_DEBUG		opt_global.h
741
742
743# options for hifn driver
744HIFN_DEBUG		opt_hifn.h
745HIFN_RNDTEST		opt_hifn.h
746
747# options for safenet driver
748SAFE_DEBUG		opt_safe.h
749SAFE_NO_RNG		opt_safe.h
750SAFE_RNDTEST		opt_safe.h
751
752# syscons/vt options
753MAXCONS			opt_syscons.h
754SC_ALT_MOUSE_IMAGE	opt_syscons.h
755SC_CUT_SPACES2TABS	opt_syscons.h
756SC_CUT_SEPCHARS		opt_syscons.h
757SC_DEBUG_LEVEL		opt_syscons.h
758SC_DFLT_FONT		opt_syscons.h
759SC_DFLT_TERM		opt_syscons.h
760SC_DISABLE_KDBKEY	opt_syscons.h
761SC_DISABLE_REBOOT	opt_syscons.h
762SC_HISTORY_SIZE		opt_syscons.h
763SC_KERNEL_CONS_ATTR	opt_syscons.h
764SC_KERNEL_CONS_ATTRS	opt_syscons.h
765SC_KERNEL_CONS_REV_ATTR	opt_syscons.h
766SC_MOUSE_CHAR		opt_syscons.h
767SC_NO_CUTPASTE		opt_syscons.h
768SC_NO_FONT_LOADING	opt_syscons.h
769SC_NO_HISTORY		opt_syscons.h
770SC_NO_MODE_CHANGE	opt_syscons.h
771SC_NO_SUSPEND_VTYSWITCH	opt_syscons.h
772SC_NO_SYSMOUSE		opt_syscons.h
773SC_NO_TERM_DUMB		opt_syscons.h
774SC_NO_TERM_SC		opt_syscons.h
775SC_NO_TERM_TEKEN	opt_syscons.h
776SC_NORM_ATTR		opt_syscons.h
777SC_NORM_REV_ATTR	opt_syscons.h
778SC_PIXEL_MODE		opt_syscons.h
779SC_RENDER_DEBUG		opt_syscons.h
780SC_TWOBUTTON_MOUSE	opt_syscons.h
781VT_ALT_TO_ESC_HACK	opt_syscons.h
782VT_FB_MAX_WIDTH		opt_syscons.h
783VT_FB_MAX_HEIGHT	opt_syscons.h
784VT_MAXWINDOWS		opt_syscons.h
785VT_TWOBUTTON_MOUSE	opt_syscons.h
786DEV_SC			opt_syscons.h
787DEV_VT			opt_syscons.h
788
789# teken terminal emulator options
790TEKEN_CONS25		opt_teken.h
791TEKEN_UTF8		opt_teken.h
792TERMINAL_KERN_ATTR	opt_teken.h
793TERMINAL_NORM_ATTR	opt_teken.h
794
795# options for printf
796PRINTF_BUFR_SIZE	opt_printf.h
797BOOT_TAG		opt_printf.h
798BOOT_TAG_SZ		opt_printf.h
799
800# kbd options
801KBD_DISABLE_KEYMAP_LOAD	opt_kbd.h
802KBD_INSTALL_CDEV	opt_kbd.h
803KBD_MAXRETRY		opt_kbd.h
804KBD_MAXWAIT		opt_kbd.h
805KBD_RESETDELAY		opt_kbd.h
806KBD_DELAY1		opt_kbd.h
807KBD_DELAY2		opt_kbd.h
808KBDIO_DEBUG		opt_kbd.h
809KBDMUX_DFLT_KEYMAP	opt_kbdmux.h
810
811# options for the Atheros driver
812ATH_DEBUG		opt_ath.h
813ATH_TXBUF		opt_ath.h
814ATH_RXBUF		opt_ath.h
815ATH_DIAGAPI		opt_ath.h
816ATH_TX99_DIAG		opt_ath.h
817ATH_ENABLE_11N		opt_ath.h
818ATH_ENABLE_DFS		opt_ath.h
819ATH_EEPROM_FIRMWARE	opt_ath.h
820ATH_ENABLE_RADIOTAP_VENDOR_EXT	opt_ath.h
821ATH_DEBUG_ALQ		opt_ath.h
822ATH_KTR_INTR_DEBUG	opt_ath.h
823
824# options for the Atheros hal
825# XXX For now, this breaks non-AR9130 chipsets, so only use it
826# XXX when actually targeting AR9130.
827AH_SUPPORT_AR9130	opt_ah.h
828
829# This is required for AR933x SoC support
830AH_SUPPORT_AR9330	opt_ah.h
831AH_SUPPORT_AR9340	opt_ah.h
832AH_SUPPORT_QCA9530	opt_ah.h
833AH_SUPPORT_QCA9550	opt_ah.h
834
835AH_DEBUG		opt_ah.h
836AH_ASSERT		opt_ah.h
837AH_DEBUG_ALQ		opt_ah.h
838AH_REGOPS_FUNC		opt_ah.h
839AH_WRITE_REGDOMAIN	opt_ah.h
840AH_DEBUG_COUNTRY	opt_ah.h
841AH_WRITE_EEPROM		opt_ah.h
842AH_PRIVATE_DIAG		opt_ah.h
843AH_NEED_DESC_SWAP	opt_ah.h
844AH_USE_INIPDGAIN	opt_ah.h
845AH_MAXCHAN		opt_ah.h
846AH_RXCFG_SDMAMW_4BYTES	opt_ah.h
847AH_INTERRUPT_DEBUGGING	opt_ah.h
848# AR5416 and later interrupt mitigation
849# XXX do not use this for AR9130
850AH_AR5416_INTERRUPT_MITIGATION	opt_ah.h
851
852# options for the Altera mSGDMA driver (altera_msgdma)
853ALTERA_MSGDMA_DESC_STD		opt_altera_msgdma.h
854ALTERA_MSGDMA_DESC_EXT		opt_altera_msgdma.h
855ALTERA_MSGDMA_DESC_PF_STD	opt_altera_msgdma.h
856ALTERA_MSGDMA_DESC_PF_EXT	opt_altera_msgdma.h
857
858# options for the Broadcom BCM43xx driver (bwi)
859BWI_DEBUG		opt_bwi.h
860BWI_DEBUG_VERBOSE	opt_bwi.h
861
862# options for the Brodacom BCM43xx driver (bwn)
863BWN_DEBUG		opt_bwn.h
864BWN_GPL_PHY		opt_bwn.h
865BWN_USE_SIBA		opt_bwn.h
866
867# Options for the SIBA driver
868SIBA_DEBUG		opt_siba.h
869
870# options for the Marvell 8335 wireless driver
871MALO_DEBUG		opt_malo.h
872MALO_TXBUF		opt_malo.h
873MALO_RXBUF		opt_malo.h
874
875# options for the Marvell wireless driver
876MWL_DEBUG		opt_mwl.h
877MWL_TXBUF		opt_mwl.h
878MWL_RXBUF		opt_mwl.h
879MWL_DIAGAPI		opt_mwl.h
880MWL_AGGR_SIZE		opt_mwl.h
881MWL_TX_NODROP		opt_mwl.h
882
883# Options for the Marvell NETA driver
884MVNETA_MULTIQUEUE	opt_mvneta.h
885MVNETA_KTR		opt_mvneta.h
886
887# Options for the Intel 802.11ac wireless driver
888IWM_DEBUG		opt_iwm.h
889
890# Options for the Intel 802.11n wireless driver
891IWN_DEBUG		opt_iwn.h
892
893# Options for the Intel 3945ABG wireless driver
894WPI_DEBUG		opt_wpi.h
895
896# dcons options
897DCONS_BUF_SIZE		opt_dcons.h
898DCONS_POLL_HZ		opt_dcons.h
899DCONS_FORCE_CONSOLE	opt_dcons.h
900DCONS_FORCE_GDB		opt_dcons.h
901
902# HWPMC options
903HWPMC_DEBUG		opt_global.h
904HWPMC_HOOKS
905HWPMC_MIPS_BACKTRACE 	opt_hwpmc_hooks.h
906
907# 802.11 support layer
908IEEE80211_DEBUG		opt_wlan.h
909IEEE80211_DEBUG_REFCNT	opt_wlan.h
910IEEE80211_SUPPORT_MESH	opt_wlan.h
911IEEE80211_SUPPORT_SUPERG	opt_wlan.h
912IEEE80211_SUPPORT_TDMA	opt_wlan.h
913IEEE80211_ALQ		opt_wlan.h
914IEEE80211_DFS_DEBUG	opt_wlan.h
915
916# 802.11 TDMA support
917TDMA_SLOTLEN_DEFAULT	opt_tdma.h
918TDMA_SLOTCNT_DEFAULT	opt_tdma.h
919TDMA_BINTVAL_DEFAULT	opt_tdma.h
920TDMA_TXRATE_11B_DEFAULT	opt_tdma.h
921TDMA_TXRATE_11G_DEFAULT	opt_tdma.h
922TDMA_TXRATE_11A_DEFAULT	opt_tdma.h
923TDMA_TXRATE_TURBO_DEFAULT	opt_tdma.h
924TDMA_TXRATE_HALF_DEFAULT	opt_tdma.h
925TDMA_TXRATE_QUARTER_DEFAULT	opt_tdma.h
926TDMA_TXRATE_11NA_DEFAULT	opt_tdma.h
927TDMA_TXRATE_11NG_DEFAULT	opt_tdma.h
928
929# VideoMode
930PICKMODE_DEBUG			opt_videomode.h
931
932# Network stack virtualization options
933VIMAGE			opt_global.h
934VNET_DEBUG		opt_global.h
935
936# Common Flash Interface (CFI) options
937CFI_SUPPORT_STRATAFLASH	opt_cfi.h
938CFI_ARMEDANDDANGEROUS	opt_cfi.h
939CFI_HARDWAREBYTESWAP	opt_cfi.h
940
941# Sound options
942SND_DEBUG		opt_snd.h
943SND_DIAGNOSTIC		opt_snd.h
944SND_FEEDER_MULTIFORMAT	opt_snd.h
945SND_FEEDER_FULL_MULTIFORMAT	opt_snd.h
946SND_FEEDER_RATE_HP	opt_snd.h
947SND_PCM_64		opt_snd.h
948SND_OLDSTEREO		opt_snd.h
949
950X86BIOS
951
952# Flattened device tree options
953FDT		opt_platform.h
954FDT_DTB_STATIC	opt_platform.h
955
956# OFED Infiniband stack
957OFED		opt_ofed.h
958OFED_DEBUG_INIT	opt_ofed.h
959SDP		opt_ofed.h
960SDP_DEBUG	opt_ofed.h
961IPOIB		opt_ofed.h
962IPOIB_DEBUG	opt_ofed.h
963IPOIB_CM	opt_ofed.h
964
965# Resource Accounting
966RACCT		opt_global.h
967RACCT_DEFAULT_TO_DISABLED	opt_global.h
968
969# Resource Limits
970RCTL		opt_global.h
971
972# Random number generator(s)
973# Alternative RNG algorithm.
974RANDOM_FENESTRASX	opt_global.h
975# With this, no entropy processor is loaded, but the entropy
976# harvesting infrastructure is present. This means an entropy
977# processor may be loaded as a module.
978RANDOM_LOADABLE	opt_global.h
979# This turns on high-rate and potentially expensive harvesting in
980# the uma slab allocator.
981RANDOM_ENABLE_UMA	opt_global.h
982RANDOM_ENABLE_ETHER	opt_global.h
983
984# This options turns TPM into entropy source.
985TPM_HARVEST	opt_tpm.h
986
987# BHND(4) driver
988BHND_LOGLEVEL	opt_global.h
989
990# GPIO and child devices
991GPIO_SPI_DEBUG	opt_gpio.h
992
993# SPI devices
994SPIGEN_LEGACY_CDEVNAME	opt_spi.h
995
996# etherswitch(4) driver
997RTL8366_SOFT_RESET opt_etherswitch.h
998
999# evdev protocol support
1000EVDEV_SUPPORT	opt_evdev.h
1001EVDEV_DEBUG	opt_evdev.h
1002UINPUT_DEBUG	opt_evdev.h
1003
1004# Hyper-V network driver
1005HN_DEBUG	opt_hn.h
1006
1007# CAM-based MMC stack
1008MMCCAM
1009# Encrypted kernel crash dumps
1010EKCD		opt_ekcd.h
1011
1012# NVME options
1013NVME_USE_NVD	opt_nvme.h
1014NVME_2X_RESET	opt_nvme.h
1015
1016# amdsbwd options
1017AMDSBWD_DEBUG	opt_amdsbwd.h
1018
1019# gcov support
1020GCOV		opt_global.h
1021LINDEBUGFS
1022
1023# options for HID support
1024HID_DEBUG	opt_hid.h
1025IICHID_DEBUG	opt_hid.h
1026IICHID_SAMPLING	opt_hid.h
1027HKBD_DFLT_KEYMAP	opt_hkbd.h
1028HIDRAW_MAKE_UHID_ALIAS	opt_hid.h
1029
1030# kenv options
1031# The early kernel environment (loader environment, config(8)-provided static)
1032# is typically cleared after the dynamic environment comes up to ensure that
1033# we're not inadvertently holding on to 'secret' values in these stale envs.
1034# This option is insecure except in controlled environments where the static
1035# environment's contents are known to be safe.
1036PRESERVE_EARLY_KENV	opt_global.h
1037