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