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