options revision 197236
156893Sfenner# $FreeBSD: head/sys/conf/options 197236 2009-09-15 22:23:45Z andre $
256893Sfenner#
356893Sfenner#        On the handling of kernel options
456893Sfenner#
556893Sfenner# All kernel options should be listed in NOTES, with suitable
656893Sfenner# descriptions.  Negative options (options that make some code not
756893Sfenner# compile) should be commented out; LINT (generated from NOTES) should
856893Sfenner# compile as much code as possible.  Try to structure option-using
956893Sfenner# code so that a single option only switch code on, or only switch
1056893Sfenner# code off, to make it possible to have a full compile-test.  If
1156893Sfenner# necessary, you can check for COMPILING_LINT to get maximum code
1256893Sfenner# coverage.
1356893Sfenner#
1456893Sfenner# All new options shall also be listed in either "conf/options" or
1556893Sfenner# "conf/options.<machine>".  Options that affect a single source-file
1656893Sfenner# <xxx>.[c|s] should be directed into "opt_<xxx>.h", while options
1756893Sfenner# that affect multiple files should either go in "opt_global.h" if
1856893Sfenner# this is a kernel-wide option (used just about everywhere), or in
1956893Sfenner# "opt_<option-name-in-lower-case>.h" if it affects only some files.
2056893Sfenner# Note that the effect of listing only an option without a
2156893Sfenner# header-file-name in conf/options (and cousins) is that the last
2256893Sfenner# convention is followed.
2356893Sfenner#
2456893Sfenner# This handling scheme is not yet fully implemented.
2556893Sfenner#
2656893Sfenner#
2756893Sfenner# Format of this file:
2856893Sfenner# Option name	filename
2956893Sfenner#
3056893Sfenner# If filename is missing, the default is
3156893Sfenner# opt_<name-of-option-in-lower-case>.h
3256893Sfenner
3356893SfennerAAC_DEBUG		opt_aac.h
3456893SfennerAHC_ALLOW_MEMIO		opt_aic7xxx.h
3556893SfennerAHC_TMODE_ENABLE	opt_aic7xxx.h
3698524SfennerAHC_DUMP_EEPROM		opt_aic7xxx.h
3756893SfennerAHC_DEBUG		opt_aic7xxx.h
3856893SfennerAHC_DEBUG_OPTS		opt_aic7xxx.h
3956893SfennerAHC_REG_PRETTY_PRINT	opt_aic7xxx.h
4056893SfennerAHD_DEBUG		opt_aic79xx.h
4156893SfennerAHD_DEBUG_OPTS		opt_aic79xx.h
4256893SfennerAHD_TMODE_ENABLE	opt_aic79xx.h	
4356893SfennerAHD_REG_PRETTY_PRINT	opt_aic79xx.h
4456893SfennerADW_ALLOW_MEMIO		opt_adw.h
4556893Sfenner
4656893SfennerTWA_DEBUG		opt_twa.h
4756893SfennerTWA_FLASH_FIRMWARE	opt_twa.h
4875115Sfenner
4975115Sfenner# Debugging options.
5056893SfennerDDB
5156893SfennerDDB_BUFR_SIZE	opt_ddb.h
5256893SfennerDDB_CAPTURE_DEFAULTBUFSIZE	opt_ddb.h
5375115SfennerDDB_CAPTURE_MAXBUFSIZE	opt_ddb.h
5475115SfennerDDB_CTF		opt_ddb.h
5575115SfennerDDB_NUMSYM	opt_ddb.h
5675115SfennerGDB
5775115SfennerKDB		opt_global.h
5875115SfennerKDB_TRACE	opt_kdb.h
5975115SfennerKDB_UNATTENDED	opt_kdb.h
6075115SfennerSYSCTL_DEBUG	opt_sysctl.h
6175115Sfenner
6275115Sfenner# Miscellaneous options.
6375115SfennerADAPTIVE_LOCKMGRS
6475115SfennerALQ
6575115SfennerAUDIT		opt_global.h
6675115SfennerCODA_COMPAT_5	opt_coda.h
6775115SfennerCOMPAT_43	opt_compat.h
6875115SfennerCOMPAT_43TTY	opt_compat.h
6975115SfennerCOMPAT_FREEBSD4	opt_compat.h
7075115SfennerCOMPAT_FREEBSD5	opt_compat.h
7175115SfennerCOMPAT_FREEBSD6	opt_compat.h
7275115SfennerCOMPAT_FREEBSD7	opt_compat.h
7375115SfennerCOMPILING_LINT	opt_global.h
7475115SfennerCY_PCI_FASTINTR
7575115SfennerDIRECTIO
7675115SfennerFULL_PREEMPTION	opt_sched.h
7775115SfennerIPI_PREEMPTION	opt_sched.h
7875115SfennerGEOM_AES	opt_geom.h
7975115SfennerGEOM_BDE	opt_geom.h
8075115SfennerGEOM_BSD	opt_geom.h
8198524SfennerGEOM_CACHE	opt_geom.h
8298524SfennerGEOM_CONCAT	opt_geom.h
8398524SfennerGEOM_ELI	opt_geom.h
8498524SfennerGEOM_FOX	opt_geom.h
8598524SfennerGEOM_GATE	opt_geom.h
8698524SfennerGEOM_JOURNAL	opt_geom.h
8798524SfennerGEOM_LABEL	opt_geom.h
8898524SfennerGEOM_LINUX_LVM	opt_geom.h
8998524SfennerGEOM_MBR	opt_geom.h
9098524SfennerGEOM_MIRROR	opt_geom.h
9198524SfennerGEOM_MULTIPATH	opt_geom.h
9275115SfennerGEOM_NOP	opt_geom.h
9375115SfennerGEOM_PART_APM	opt_geom.h
9475115SfennerGEOM_PART_BSD	opt_geom.h
9575115SfennerGEOM_PART_EBR	opt_geom.h
9675115SfennerGEOM_PART_EBR_COMPAT	opt_geom.h
9775115SfennerGEOM_PART_GPT	opt_geom.h
9875115SfennerGEOM_PART_MBR	opt_geom.h
9975115SfennerGEOM_PART_PC98	opt_geom.h
10075115SfennerGEOM_PART_VTOC8	opt_geom.h
10175115SfennerGEOM_PC98	opt_geom.h
10275115SfennerGEOM_RAID3	opt_geom.h
10375115SfennerGEOM_SHSEC	opt_geom.h
10475115SfennerGEOM_STRIPE	opt_geom.h
10575115SfennerGEOM_SUNLABEL	opt_geom.h
10675115SfennerGEOM_UZIP	opt_geom.h
10775115SfennerGEOM_VIRSTOR	opt_geom.h
10875115SfennerGEOM_VOL	opt_geom.h
10975115SfennerGEOM_ZERO	opt_geom.h
11075115SfennerKDTRACE_HOOKS	opt_kdtrace.h
11175115SfennerKSTACK_MAX_PAGES
11275115SfennerKSTACK_PAGES
11375115SfennerKTRACE
11475115SfennerKTRACE_REQUEST_POOL	opt_ktrace.h
11575115SfennerLIBICONV
11675115SfennerMAC		opt_global.h
11775115SfennerMAC_BIBA	opt_dontuse.h
11875115SfennerMAC_BSDEXTENDED	opt_dontuse.h
11975115SfennerMAC_IFOFF	opt_dontuse.h
12075115SfennerMAC_LOMAC	opt_dontuse.h
12175115SfennerMAC_MLS		opt_dontuse.h
12275115SfennerMAC_NONE	opt_dontuse.h
12375115SfennerMAC_PARTITION	opt_dontuse.h
12475115SfennerMAC_PORTACL	opt_dontuse.h
12575115SfennerMAC_SEEOTHERUIDS	opt_dontuse.h
12675115SfennerMAC_STATIC	opt_mac.h
12775115SfennerMAC_STUB	opt_dontuse.h
12875115SfennerMAC_TEST	opt_dontuse.h
12975115SfennerMD_ROOT		opt_md.h
13075115SfennerMD_ROOT_SIZE	opt_md.h
13175115SfennerMFI_DEBUG	opt_mfi.h
13256893SfennerMFI_DECODE_LOG	opt_mfi.h
13356893SfennerMPROF_BUFFERS	opt_mprof.h
13456893SfennerMPROF_HASH_SIZE	opt_mprof.h
13556893SfennerNO_ADAPTIVE_MUTEXES	opt_adaptive_mutexes.h
13656893SfennerNO_ADAPTIVE_RWLOCKS
13756893SfennerNO_ADAPTIVE_SX
13856893SfennerNO_SYSCTL_DESCR	opt_global.h
13998524SfennerNSWBUF_MIN	opt_swap.h
14098524SfennerMBUF_PACKET_ZONE_DISABLE	opt_global.h
14198524SfennerPANIC_REBOOT_WAIT_TIME	opt_panic.h
14298524SfennerPPC_DEBUG	opt_ppc.h
14398524SfennerPPC_PROBE_CHIPSET	opt_ppc.h
14498524SfennerPPS_SYNC	opt_ntp.h
14598524SfennerPREEMPTION	opt_sched.h
14698524SfennerQUOTA
14798524SfennerSCHED_4BSD	opt_sched.h
14898524SfennerSCHED_STATS	opt_sched.h
14998524SfennerSCHED_ULE	opt_sched.h
15056893SfennerSHOW_BUSYBUFS
15156893SfennerSLEEPQUEUE_PROFILING
15275115SfennerSLHCI_DEBUG	opt_slhci.h
15356893SfennerSPX_HACK
15456893SfennerSTACK		opt_stack.h
15556893SfennerSUIDDIR
15656893SfennerMSGMNB		opt_sysvipc.h
15756893SfennerMSGMNI		opt_sysvipc.h
15856893SfennerMSGSEG		opt_sysvipc.h
15975115SfennerMSGSSZ		opt_sysvipc.h
16056893SfennerMSGTQL		opt_sysvipc.h
16175115SfennerSEMMAP		opt_sysvipc.h
16256893SfennerSEMMNI		opt_sysvipc.h
16356893SfennerSEMMNS		opt_sysvipc.h
16456893SfennerSEMMNU		opt_sysvipc.h
16556893SfennerSEMMSL		opt_sysvipc.h
16656893SfennerSEMOPM		opt_sysvipc.h
16756893SfennerSEMUME		opt_sysvipc.h
16856893SfennerSHMALL		opt_sysvipc.h
16956893SfennerSHMMAX		opt_sysvipc.h
17075115SfennerSHMMAXPGS	opt_sysvipc.h
17156893SfennerSHMMIN		opt_sysvipc.h
17256893SfennerSHMMNI		opt_sysvipc.h
17356893SfennerSHMSEG		opt_sysvipc.h
17456893SfennerSYSVMSG		opt_sysvipc.h
17556893SfennerSYSVSEM		opt_sysvipc.h
17656893SfennerSYSVSHM		opt_sysvipc.h
17756893SfennerSW_WATCHDOG	opt_watchdog.h
17856893SfennerTURNSTILE_PROFILING
17956893SfennerVFS_AIO
18056893SfennerVERBOSE_SYSINIT	opt_global.h
18175115SfennerWLCACHE		opt_wavelan.h
18256893SfennerWLDEBUG		opt_wavelan.h
18375115Sfenner
18475115Sfenner# POSIX kernel options
18575115SfennerP1003_1B_MQUEUE			opt_posix.h
18675115SfennerP1003_1B_SEMAPHORES		opt_posix.h
18775115Sfenner_KPOSIX_PRIORITY_SCHEDULING	opt_posix.h
18875115Sfenner
18975115Sfenner# Do we want the config file compiled into the kernel?
19075115SfennerINCLUDE_CONFIG_FILE	opt_config.h
19175115Sfenner
19275115Sfenner# Options for static filesystems.  These should only be used at config
19375115Sfenner# time, since the corresponding lkms cannot work if there are any static
19475115Sfenner# dependencies.  Unusability is enforced by hiding the defines for the
19598524Sfenner# options in a never-included header.
19675115SfennerCD9660		opt_dontuse.h
19775115SfennerCODA		opt_dontuse.h
19875115SfennerEXT2FS		opt_dontuse.h
19975115SfennerFDESCFS		opt_dontuse.h
20075115SfennerHPFS		opt_dontuse.h
20175115SfennerMSDOSFS		opt_dontuse.h
20275115SfennerNTFS		opt_dontuse.h
20375115SfennerNULLFS		opt_dontuse.h
20475115SfennerNWFS		opt_dontuse.h
20575115SfennerPORTALFS	opt_dontuse.h
20675115SfennerPROCFS		opt_dontuse.h
20775115SfennerPSEUDOFS	opt_dontuse.h
20875115SfennerREISERFS	opt_dontuse.h
20975115SfennerSMBFS		opt_dontuse.h
21075115SfennerTMPFS		opt_dontuse.h
21175115SfennerUDF		opt_dontuse.h
21275115SfennerUNIONFS		opt_dontuse.h
21375115Sfenner
21475115Sfenner# Pseudofs debugging
21575115SfennerPSEUDOFS_TRACE	opt_pseudofs.h
21675115Sfenner
21775115Sfenner# Broken - ffs_snapshot() dependency from ufs_lookup() :-(
21875115SfennerFFS		opt_ffs_broken_fixme.h
21975115Sfenner
22075115Sfenner# In-kernel GSS-API
22175115SfennerKGSSAPI		opt_kgssapi.h
22275115SfennerKGSSAPI_DEBUG	opt_kgssapi.h
22375115Sfenner
22475115Sfenner# These static filesystems have one slightly bogus static dependency in
22575115Sfenner# sys/i386/i386/autoconf.c.  If any of these filesystems are
22675115Sfenner# statically compiled into the kernel, code for mounting them as root
22775115Sfenner# filesystems will be enabled - but look below.
22875115SfennerNFSCLIENT	opt_nfs.h
22975115SfennerNFSSERVER	opt_nfs.h
23075115Sfenner
23175115Sfenner# Use these options to compile the experimental nfs client and/or
23275115Sfenner# server that supports NFSv4 into a kernel.
23375115Sfenner# NFSCL - client
23475115Sfenner# NFSD - server
23575115SfennerNFSCL		opt_nfs.h
23675115SfennerNFSD		opt_nfs.h
23775115Sfenner
23875115Sfenner# filesystems and libiconv bridge
23975115SfennerCD9660_ICONV	opt_dontuse.h
24075115SfennerMSDOSFS_ICONV	opt_dontuse.h
24175115SfennerNTFS_ICONV	opt_dontuse.h
24275115SfennerUDF_ICONV	opt_dontuse.h
24375115Sfenner
24475115Sfenner# If you are following the conditions in the copyright,
24575115Sfenner# you can enable soft-updates which will speed up a lot of thigs
24675115Sfenner# and make the system safer from crashes at the same time.
24775115Sfenner# otherwise a STUB module will be compiled in.
24875115SfennerSOFTUPDATES	opt_ffs.h
24975115Sfenner
25075115Sfenner# On small, embedded systems, it can be useful to turn off support for
25198524Sfenner# snapshots.  It saves about 30-40k for a feature that would be lightly
25275115Sfenner# used, if it is used at all.
25375115SfennerNO_FFS_SNAPSHOT	opt_ffs.h
25475115Sfenner
25575115Sfenner# Enabling this option turns on support for Access Control Lists in UFS,
25675115Sfenner# which can be used to support high security configurations.  Depends on
25775115Sfenner# UFS_EXTATTR.
25875115SfennerUFS_ACL		opt_ufs.h
25975115Sfenner
26075115Sfenner# Enabling this option turns on support for extended attributes in UFS-based
26175115Sfenner# filesystems, which can be used to support high security configurations
26275115Sfenner# as well as new filesystem features.
26398524SfennerUFS_EXTATTR	opt_ufs.h
26475115SfennerUFS_EXTATTR_AUTOSTART	opt_ufs.h
26575115Sfenner
26675115Sfenner# Enable fast hash lookups for large directories on UFS-based filesystems.
26756893SfennerUFS_DIRHASH	opt_ufs.h
26856893Sfenner
26956893Sfenner# Enable gjournal-based UFS journal.
27056893SfennerUFS_GJOURNAL	opt_ufs.h
27156893Sfenner
27275115Sfenner# The below sentence is not in English, and neither is this one.
27356893Sfenner# We plan to remove the static dependences above, with a
27456893Sfenner# <filesystem>_ROOT option to control if it usable as root.  This list
27556893Sfenner# allows these options to be present in config files already (though
27656893Sfenner# they won't make any difference yet).
27756893SfennerNFS_ROOT	opt_nfsroot.h
27856893Sfenner
27956893Sfenner# SMB/CIFS requester
28056893SfennerNETSMB		opt_netsmb.h
28156893Sfenner
28256893Sfenner# Options used only in subr_param.c.
28356893SfennerHZ		opt_param.h
28456893SfennerMAXFILES	opt_param.h
28556893SfennerNBUF		opt_param.h
28656893SfennerNSFBUFS		opt_param.h
28756893SfennerVM_BCACHE_SIZE_MAX	opt_param.h
28856893SfennerVM_SWZONE_SIZE_MAX	opt_param.h
28956893SfennerMAXUSERS
29056893SfennerDFLDSIZ		opt_param.h
29156893SfennerMAXDSIZ		opt_param.h
29256893SfennerMAXSSIZ		opt_param.h
29375115Sfenner
29456893Sfenner# Generic SCSI options.
29556893SfennerCAM_MAX_HIGHPOWER	opt_cam.h
29656893SfennerCAMDEBUG		opt_cam.h
29775115SfennerCAM_DEBUG_DELAY		opt_cam.h
29856893SfennerCAM_DEBUG_BUS		opt_cam.h
29956893SfennerCAM_DEBUG_TARGET	opt_cam.h
30056893SfennerCAM_DEBUG_LUN		opt_cam.h
30156893SfennerCAM_DEBUG_FLAGS		opt_cam.h
30256893SfennerSCSI_DELAY		opt_scsi.h
30356893SfennerSCSI_NO_SENSE_STRINGS	opt_scsi.h
30456893SfennerSCSI_NO_OP_STRINGS	opt_scsi.h
30556893Sfenner
30656893Sfenner# Options used only in cam/scsi/scsi_cd.c
30756893SfennerCHANGER_MIN_BUSY_SECONDS	opt_cd.h
30856893SfennerCHANGER_MAX_BUSY_SECONDS	opt_cd.h
30956893Sfenner
31056893Sfenner# Options used only in cam/scsi/scsi_sa.c.
31156893SfennerSA_IO_TIMEOUT		opt_sa.h
31256893SfennerSA_SPACE_TIMEOUT	opt_sa.h
31356893SfennerSA_REWIND_TIMEOUT	opt_sa.h
31456893SfennerSA_ERASE_TIMEOUT	opt_sa.h
31556893SfennerSA_1FM_AT_EOD		opt_sa.h
31675115Sfenner
31756893Sfenner# Options used only in cam/scsi/scsi_pt.c
31856893SfennerSCSI_PT_DEFAULT_TIMEOUT	opt_pt.h
31956893Sfenner
32075115Sfenner# Options used only in cam/scsi/scsi_ses.c
32156893SfennerSES_ENABLE_PASSTHROUGH	opt_ses.h
32256893Sfenner
32356893Sfenner# Options used in dev/sym/ (Symbios SCSI driver).
32456893SfennerSYM_SETUP_LP_PROBE_MAP	opt_sym.h	#-Low Priority Probe Map (bits)
32556893Sfenner					# Allows the ncr to take precedence
32656893Sfenner					# 1 (1<<0) -> 810a, 860
32756893Sfenner					# 2 (1<<1) -> 825a, 875, 885, 895
32856893Sfenner					# 4 (1<<2) -> 895a, 896, 1510d 
32956893SfennerSYM_SETUP_SCSI_DIFF	opt_sym.h	#-HVD support for 825a, 875, 885
33056893Sfenner					# disabled:0 (default), enabled:1
33156893SfennerSYM_SETUP_PCI_PARITY	opt_sym.h	#-PCI parity checking
33256893Sfenner					# disabled:0, enabled:1 (default)
33356893SfennerSYM_SETUP_MAX_LUN	opt_sym.h	#-Number of LUNs supported
334					# default:8, range:[1..64]
335
336# Options used only in pci/ncr.c
337SCSI_NCR_DEBUG		opt_ncr.h
338SCSI_NCR_MAX_SYNC	opt_ncr.h
339SCSI_NCR_MAX_WIDE	opt_ncr.h
340SCSI_NCR_MYADDR		opt_ncr.h
341
342# Options used only in dev/isp/*
343ISP_TARGET_MODE		opt_isp.h
344ISP_FW_CRASH_DUMP	opt_isp.h
345ISP_DEFAULT_ROLES	opt_isp.h
346
347# Options used only in dev/iscsi
348ISCSI_INITIATOR_DEBUG	opt_iscsi_initiator.h
349
350# Options used in the 'ata' ATA/ATAPI driver
351ATA_STATIC_ID		opt_ata.h
352ATA_NOPCI		opt_ata.h
353
354# Net stuff.
355ACCEPT_FILTER_DATA
356ACCEPT_FILTER_DNS
357ACCEPT_FILTER_HTTP
358ALTQ			opt_global.h
359ALTQ_CBQ		opt_altq.h
360ALTQ_CDNR		opt_altq.h
361ALTQ_DEBUG		opt_altq.h
362ALTQ_HFSC		opt_altq.h
363ALTQ_NOPCC		opt_altq.h
364ALTQ_PRIQ		opt_altq.h
365ALTQ_RED		opt_altq.h
366ALTQ_RIO		opt_altq.h
367BOOTP			opt_bootp.h
368BOOTP_BLOCKSIZE		opt_bootp.h
369BOOTP_COMPAT		opt_bootp.h
370BOOTP_NFSROOT		opt_bootp.h
371BOOTP_NFSV3		opt_bootp.h
372BOOTP_WIRED_TO		opt_bootp.h
373DEVICE_POLLING
374DEV_ENC			opt_enc.h
375DEV_PF			opt_pf.h
376DEV_PFLOG		opt_pf.h
377DEV_PFSYNC		opt_pf.h
378DEV_VLAN		opt_vlan.h
379DUMMYNET		opt_ipdn.h
380ETHER_8022		opt_ef.h
381ETHER_8023		opt_ef.h
382ETHER_II		opt_ef.h
383ETHER_SNAP		opt_ef.h
384INET			opt_inet.h
385INET6			opt_inet6.h
386IPDIVERT
387IPFILTER		opt_ipfilter.h
388IPFILTER_DEFAULT_BLOCK	opt_ipfilter.h
389IPFILTER_LOG		opt_ipfilter.h
390IPFILTER_LOOKUP		opt_ipfilter.h
391IPFIREWALL		opt_ipfw.h
392IPFIREWALL_DEFAULT_TO_ACCEPT	opt_ipfw.h
393IPFIREWALL_FORWARD	opt_ipfw.h
394IPFIREWALL_NAT		opt_ipfw.h
395IPFIREWALL_VERBOSE	opt_ipfw.h
396IPFIREWALL_VERBOSE_LIMIT	opt_ipfw.h
397IPSEC			opt_ipsec.h
398IPSEC_DEBUG		opt_ipsec.h
399IPSEC_FILTERTUNNEL	opt_ipsec.h
400IPSEC_NAT_T		opt_ipsec.h
401IPSTEALTH
402IPX
403KRPC
404LIBALIAS
405LIBMBPOOL
406LIBMCHAIN
407MBUF_PROFILING
408MBUF_STRESS_TEST
409MROUTING		opt_mrouting.h
410NCP
411NETATALK		opt_atalk.h
412NFSLOCKD
413RADIX_MPATH		opt_mpath.h
414ROUTETABLES		opt_route.h
415SLIP_IFF_OPTS		opt_slip.h
416TCPDEBUG
417TCP_OFFLOAD_DISABLE	opt_inet.h #Disable code to dispatch tcp offloading
418TCP_SIGNATURE		opt_inet.h
419TCP_SORECEIVE_STREAM	opt_inet.h
420VLAN_ARRAY		opt_vlan.h
421XBONEHACK
422FLOWTABLE		opt_route.h
423
424#
425# SCTP
426#
427SCTP			opt_sctp.h
428SCTP_DEBUG		opt_sctp.h # Enable debug printfs
429SCTP_WITH_NO_CSUM	opt_sctp.h # Use this at your peril
430SCTP_LOCK_LOGGING	opt_sctp.h # Log to KTR lock activity
431SCTP_MBUF_LOGGING	opt_sctp.h # Log to KTR general mbuf aloc/free
432SCTP_MBCNT_LOGGING	opt_sctp.h # Log to KTR mbcnt activity
433SCTP_PACKET_LOGGING	opt_sctp.h # Log to a packet buffer last N packets
434SCTP_LTRACE_CHUNKS	opt_sctp.h # Log to KTR chunks processed
435SCTP_LTRACE_ERRORS	opt_sctp.h # Log to KTR error returns.
436#
437#
438#
439
440# Netgraph(4). Use option NETGRAPH to enable the base netgraph code.
441# Each netgraph node type can be either be compiled into the kernel
442# or loaded dynamically. To get the former, include the corresponding
443# option below. Each type has its own man page, e.g. ng_async(4).
444NETGRAPH
445NETGRAPH_DEBUG		opt_netgraph.h
446NETGRAPH_ASYNC		opt_netgraph.h
447NETGRAPH_ATMLLC		opt_netgraph.h
448NETGRAPH_ATM_ATMPIF	opt_netgraph.h
449NETGRAPH_BLUETOOTH	opt_netgraph.h
450NETGRAPH_BLUETOOTH_BT3C	opt_netgraph.h
451NETGRAPH_BLUETOOTH_H4	opt_netgraph.h
452NETGRAPH_BLUETOOTH_HCI	opt_netgraph.h
453NETGRAPH_BLUETOOTH_L2CAP	opt_netgraph.h
454NETGRAPH_BLUETOOTH_SOCKET	opt_netgraph.h
455NETGRAPH_BLUETOOTH_UBT	opt_netgraph.h
456NETGRAPH_BLUETOOTH_UBTBCMFW	opt_netgraph.h
457NETGRAPH_BPF		opt_netgraph.h
458NETGRAPH_BRIDGE		opt_netgraph.h
459NETGRAPH_CAR		opt_netgraph.h
460NETGRAPH_CISCO		opt_netgraph.h
461NETGRAPH_DEFLATE	opt_netgraph.h
462NETGRAPH_DEVICE		opt_netgraph.h
463NETGRAPH_ECHO		opt_netgraph.h
464NETGRAPH_EIFACE		opt_netgraph.h
465NETGRAPH_ETHER		opt_netgraph.h
466NETGRAPH_ETHER_ECHO	opt_netgraph.h
467NETGRAPH_FEC		opt_netgraph.h
468NETGRAPH_FRAME_RELAY	opt_netgraph.h
469NETGRAPH_GIF		opt_netgraph.h
470NETGRAPH_GIF_DEMUX	opt_netgraph.h
471NETGRAPH_HOLE		opt_netgraph.h
472NETGRAPH_IFACE		opt_netgraph.h
473NETGRAPH_IP_INPUT	opt_netgraph.h
474NETGRAPH_IPFW		opt_netgraph.h
475NETGRAPH_KSOCKET	opt_netgraph.h
476NETGRAPH_L2TP		opt_netgraph.h
477NETGRAPH_LMI		opt_netgraph.h
478# MPPC compression requires proprietary files (not included)
479NETGRAPH_MPPC_COMPRESSION	opt_netgraph.h
480NETGRAPH_MPPC_ENCRYPTION	opt_netgraph.h
481NETGRAPH_NAT		opt_netgraph.h
482NETGRAPH_NETFLOW	opt_netgraph.h
483NETGRAPH_ONE2MANY	opt_netgraph.h
484NETGRAPH_PIPE		opt_netgraph.h
485NETGRAPH_PPP		opt_netgraph.h
486NETGRAPH_PPPOE		opt_netgraph.h
487NETGRAPH_PPTPGRE	opt_netgraph.h
488NETGRAPH_PRED1		opt_netgraph.h
489NETGRAPH_RFC1490	opt_netgraph.h
490NETGRAPH_SOCKET		opt_netgraph.h
491NETGRAPH_SPLIT		opt_netgraph.h
492NETGRAPH_SPPP		opt_netgraph.h
493NETGRAPH_TAG		opt_netgraph.h
494NETGRAPH_TCPMSS		opt_netgraph.h
495NETGRAPH_TEE		opt_netgraph.h
496NETGRAPH_TTY		opt_netgraph.h
497NETGRAPH_UI		opt_netgraph.h
498NETGRAPH_VJC		opt_netgraph.h
499
500# NgATM options
501NGATM_ATM		opt_netgraph.h
502NGATM_ATMBASE		opt_netgraph.h
503NGATM_SSCOP		opt_netgraph.h
504NGATM_SSCFU		opt_netgraph.h
505NGATM_UNI		opt_netgraph.h
506NGATM_CCATM		opt_netgraph.h
507
508# DRM options
509DRM_DEBUG		opt_drm.h
510
511ZERO_COPY_SOCKETS	opt_zero.h
512TI_PRIVATE_JUMBOS	opt_ti.h
513TI_JUMBO_HDRSPLIT	opt_ti.h
514
515# XXX Conflict: # of devices vs network protocol (Native ATM).
516# This makes "atm.h" unusable.
517NATM
518
519# DPT driver debug flags
520DPT_MEASURE_PERFORMANCE	opt_dpt.h
521DPT_HANDLE_TIMEOUTS	opt_dpt.h
522DPT_TIMEOUT_FACTOR	opt_dpt.h
523DPT_LOST_IRQ		opt_dpt.h
524DPT_RESET_HBA		opt_dpt.h
525
526# Misc debug flags.  Most of these should probably be replaced with
527# 'DEBUG', and then let people recompile just the interesting modules
528# with 'make CC="cc -DDEBUG"'.
529CLUSTERDEBUG		opt_debug_cluster.h
530DEBUG_1284		opt_ppb_1284.h
531VP0_DEBUG		opt_vpo.h
532LPT_DEBUG		opt_lpt.h
533PLIP_DEBUG		opt_plip.h
534LOCKF_DEBUG		opt_debug_lockf.h
535NETATALKDEBUG		opt_atalk.h
536SI_DEBUG		opt_debug_si.h
537
538# Fb options
539FB_DEBUG		opt_fb.h
540FB_INSTALL_CDEV		opt_fb.h
541
542# ppbus related options
543PERIPH_1284		opt_ppb_1284.h
544DONTPROBE_1284		opt_ppb_1284.h
545
546# smbus related options
547ENABLE_ALART		opt_intpm.h
548
549# These cause changes all over the kernel
550BLKDEV_IOSIZE		opt_global.h
551BURN_BRIDGES		opt_global.h
552DEBUG			opt_global.h
553DEBUG_LOCKS		opt_global.h
554DEBUG_VFS_LOCKS		opt_global.h
555DFLTPHYS		opt_global.h
556DIAGNOSTIC		opt_global.h
557INVARIANT_SUPPORT	opt_global.h
558INVARIANTS		opt_global.h
559MAXPHYS			opt_global.h
560MCLSHIFT		opt_global.h
561MUTEX_DEBUG		opt_global.h
562MUTEX_NOINLINE		opt_global.h
563LOCK_PROFILING		opt_global.h
564LOCK_PROFILING_FAST	opt_global.h
565MSIZE			opt_global.h
566REGRESSION		opt_global.h
567RESTARTABLE_PANICS	opt_global.h
568RWLOCK_NOINLINE		opt_global.h
569SX_NOINLINE		opt_global.h
570VFS_BIO_DEBUG		opt_global.h
571
572# These are VM related options
573VM_KMEM_SIZE		opt_vm.h
574VM_KMEM_SIZE_SCALE	opt_vm.h
575VM_KMEM_SIZE_MAX	opt_vm.h
576VM_NRESERVLEVEL		opt_vm.h
577VM_LEVEL_0_ORDER	opt_vm.h
578NO_SWAPPING		opt_vm.h
579MALLOC_MAKE_FAILURES	opt_vm.h
580MALLOC_PROFILE		opt_vm.h
581
582# The MemGuard replacement allocator used for tamper-after-free detection
583DEBUG_MEMGUARD		opt_vm.h
584
585# The RedZone malloc(9) protection
586DEBUG_REDZONE		opt_vm.h
587
588# Standard SMP options
589SMP			opt_global.h
590
591# Size of the kernel message buffer
592MSGBUF_SIZE		opt_msgbuf.h
593
594# NFS options
595NFS_MINATTRTIMO		opt_nfs.h
596NFS_MAXATTRTIMO		opt_nfs.h
597NFS_MINDIRATTRTIMO	opt_nfs.h
598NFS_MAXDIRATTRTIMO	opt_nfs.h
599NFS_GATHERDELAY		opt_nfs.h
600NFS_WDELAYHASHSIZ	opt_nfs.h
601NFS_DEBUG		opt_nfs.h
602
603# For the Bt848/Bt848A/Bt849/Bt878/Bt879 driver
604OVERRIDE_CARD			opt_bktr.h
605OVERRIDE_TUNER			opt_bktr.h
606OVERRIDE_DBX			opt_bktr.h
607OVERRIDE_MSP			opt_bktr.h
608BROOKTREE_SYSTEM_DEFAULT	opt_bktr.h
609BROOKTREE_ALLOC_PAGES		opt_bktr.h
610BKTR_OVERRIDE_CARD		opt_bktr.h
611BKTR_OVERRIDE_TUNER		opt_bktr.h
612BKTR_OVERRIDE_DBX		opt_bktr.h
613BKTR_OVERRIDE_MSP		opt_bktr.h
614BKTR_SYSTEM_DEFAULT		opt_bktr.h
615BKTR_ALLOC_PAGES		opt_bktr.h
616BKTR_USE_PLL			opt_bktr.h	
617BKTR_GPIO_ACCESS		opt_bktr.h
618BKTR_NO_MSP_RESET		opt_bktr.h
619BKTR_430_FX_MODE		opt_bktr.h
620BKTR_SIS_VIA_MODE		opt_bktr.h
621BKTR_USE_FREEBSD_SMBUS		opt_bktr.h
622BKTR_NEW_MSP34XX_DRIVER		opt_bktr.h
623
624BREAK_TO_DEBUGGER	opt_comconsole.h
625ALT_BREAK_TO_DEBUGGER	opt_comconsole.h
626
627# Options to support PPS
628UART_PPS_ON_CTS		opt_uart.h
629
630# options for bus/device framework
631BUS_DEBUG		opt_bus.h
632
633# options for USB support
634USB_DEBUG		opt_usb.h
635USB_VERBOSE		opt_usb.h
636USB_EHCI_BIG_ENDIAN_DESC	opt_usb.h
637U3G_DEBUG		opt_u3g.h
638UKBD_DFLT_KEYMAP	opt_ukbd.h
639UPLCOM_INTR_INTERVAL	opt_uplcom.h
640UVSCOM_DEFAULT_OPKTSIZE	opt_uvscom.h
641UVSCOM_INTR_INTERVAL	opt_uvscom.h
642
643# Embedded system options
644INIT_PATH
645
646ROOTDEVNAME
647
648FDC_DEBUG		opt_fdc.h
649PCFCLOCK_VERBOSE	opt_pcfclock.h
650PCFCLOCK_MAX_RETRIES	opt_pcfclock.h
651
652KTR			opt_global.h
653KTR_ALQ			opt_ktr.h
654KTR_MASK		opt_ktr.h
655KTR_CPUMASK		opt_ktr.h
656KTR_COMPILE		opt_global.h
657KTR_ENTRIES		opt_global.h
658KTR_VERBOSE		opt_ktr.h
659WITNESS			opt_global.h
660WITNESS_KDB		opt_witness.h
661WITNESS_SKIPSPIN	opt_witness.h
662
663# options for ACPI support
664ACPI_DEBUG		opt_acpi.h
665ACPI_MAX_TASKS		opt_acpi.h
666ACPI_MAX_THREADS	opt_acpi.h
667
668# ISA support
669DEV_ISA			opt_isa.h
670ISAPNP			opt_isa.h
671
672# various 'device presence' options.
673DEV_BPF			opt_bpf.h
674DEV_MCA			opt_mca.h
675DEV_CARP		opt_carp.h
676DEV_SPLASH		opt_splash.h
677
678# EISA support
679DEV_EISA		opt_eisa.h
680EISA_SLOTS		opt_eisa.h
681
682# ed driver
683ED_HPP			opt_ed.h
684ED_3C503		opt_ed.h
685ED_SIC			opt_ed.h
686
687# bce driver
688BCE_DEBUG		opt_bce.h
689
690SOCKBUF_DEBUG		opt_global.h
691
692# options for ubsec driver
693UBSEC_DEBUG		opt_ubsec.h
694UBSEC_RNDTEST		opt_ubsec.h
695UBSEC_NO_RNG		opt_ubsec.h
696
697# options for hifn driver
698HIFN_DEBUG		opt_hifn.h
699HIFN_RNDTEST		opt_hifn.h
700
701# options for safenet driver
702SAFE_DEBUG		opt_safe.h
703SAFE_NO_RNG		opt_safe.h
704SAFE_RNDTEST		opt_safe.h
705
706# syscons options
707MAXCONS			opt_syscons.h
708SC_ALT_MOUSE_IMAGE	opt_syscons.h
709SC_CUT_SPACES2TABS	opt_syscons.h
710SC_CUT_SEPCHARS		opt_syscons.h
711SC_DEBUG_LEVEL		opt_syscons.h
712SC_DFLT_FONT		opt_syscons.h
713SC_DISABLE_KDBKEY	opt_syscons.h
714SC_DISABLE_REBOOT	opt_syscons.h
715SC_HISTORY_SIZE		opt_syscons.h
716SC_KERNEL_CONS_ATTR	opt_syscons.h
717SC_KERNEL_CONS_REV_ATTR	opt_syscons.h
718SC_MOUSE_CHAR		opt_syscons.h
719SC_NO_CUTPASTE		opt_syscons.h
720SC_NO_FONT_LOADING	opt_syscons.h
721SC_NO_HISTORY		opt_syscons.h
722SC_NO_MODE_CHANGE	opt_syscons.h
723SC_NO_SUSPEND_VTYSWITCH	opt_syscons.h
724SC_NO_SYSMOUSE		opt_syscons.h
725SC_NORM_ATTR		opt_syscons.h
726SC_NORM_REV_ATTR	opt_syscons.h
727SC_PIXEL_MODE		opt_syscons.h
728SC_RENDER_DEBUG		opt_syscons.h
729SC_TWOBUTTON_MOUSE	opt_syscons.h
730
731# teken terminal emulator options
732TEKEN_UTF8		opt_teken.h
733TEKEN_XTERM		opt_teken.h
734
735# options for printf
736PRINTF_BUFR_SIZE	opt_printf.h
737
738# kbd options
739KBD_DISABLE_KEYMAP_LOAD	opt_kbd.h
740KBD_INSTALL_CDEV	opt_kbd.h
741KBD_MAXRETRY		opt_kbd.h
742KBD_MAXWAIT		opt_kbd.h
743KBD_RESETDELAY		opt_kbd.h
744KBDIO_DEBUG		opt_kbd.h
745
746# options for the Atheros driver
747ATH_DEBUG		opt_ath.h
748ATH_TXBUF		opt_ath.h
749ATH_RXBUF		opt_ath.h
750ATH_DIAGAPI		opt_ath.h
751ATH_TX99_DIAG		opt_ath.h
752
753# options for the Atheros hal
754AH_SUPPORT_AR5416	opt_ah.h
755
756AH_DEBUG		opt_ah.h
757AH_ASSERT		opt_ah.h
758AH_DEBUG_ALQ		opt_ah.h
759AH_REGOPS_FUNC		opt_ah.h
760AH_WRITE_REGDOMAIN	opt_ah.h
761AH_DEBUG_COUNTRY	opt_ah.h
762AH_WRITE_EEPROM		opt_ah.h
763AH_PRIVATE_DIAG		opt_ah.h
764AH_NEED_DESC_SWAP	opt_ah.h
765AH_USE_INIPDGAIN	opt_ah.h
766AH_MAXCHAN		opt_ah.h
767
768# options for the Broadcom BCM43xx driver (bwi)
769BWI_DEBUG		opt_bwi.h
770BWI_DEBUG_VERBOSE	opt_bwi.h
771
772# options for the Marvell 8335 wireless driver
773MALO_DEBUG		opt_malo.h
774MALO_TXBUF		opt_malo.h
775MALO_RXBUF		opt_malo.h
776
777# options for the Marvell wireless driver
778MWL_DEBUG		opt_mwl.h
779MWL_TXBUF		opt_mwl.h
780MWL_RXBUF		opt_mwl.h
781MWL_DIAGAPI		opt_mwl.h
782MWL_AGGR_SIZE		opt_mwl.h
783MWL_TX_NODROP		opt_mwl.h
784
785# dcons options 
786DCONS_BUF_SIZE		opt_dcons.h
787DCONS_POLL_HZ		opt_dcons.h
788DCONS_FORCE_CONSOLE	opt_dcons.h
789DCONS_FORCE_GDB		opt_dcons.h
790
791# HWPMC options
792HWPMC_HOOKS
793
794# XBOX options for FreeBSD/i386, but some files are MI
795XBOX			opt_xbox.h
796
797# XFS
798XFS
799
800# Interrupt filtering
801INTR_FILTER
802
803# 802.11 support layer
804IEEE80211_DEBUG		opt_wlan.h
805IEEE80211_DEBUG_REFCNT	opt_wlan.h
806IEEE80211_AMPDU_AGE	opt_wlan.h
807IEEE80211_SUPPORT_MESH	opt_wlan.h
808IEEE80211_SUPPORT_SUPERG	opt_wlan.h
809IEEE80211_SUPPORT_TDMA	opt_wlan.h
810
811# 802.11 TDMA support
812TDMA_SLOTLEN_DEFAULT	opt_tdma.h
813TDMA_SLOTCNT_DEFAULT	opt_tdma.h
814TDMA_BINTVAL_DEFAULT	opt_tdma.h
815TDMA_TXRATE_11B_DEFAULT	opt_tdma.h
816TDMA_TXRATE_11G_DEFAULT	opt_tdma.h
817TDMA_TXRATE_11A_DEFAULT	opt_tdma.h
818TDMA_TXRATE_TURBO_DEFAULT	opt_tdma.h
819TDMA_TXRATE_HALF_DEFAULT	opt_tdma.h
820TDMA_TXRATE_QUARTER_DEFAULT	opt_tdma.h
821TDMA_TXRATE_11NA_DEFAULT	opt_tdma.h
822TDMA_TXRATE_11NG_DEFAULT	opt_tdma.h
823
824# Network stack virtualization options
825VIMAGE			opt_global.h
826VNET_DEBUG		opt_global.h
827
828# Common Flash Interface (CFI) options
829CFI_SUPPORT_STRATAFLASH	opt_cfi.h
830CFI_ARMEDANDDANGEROUS	opt_cfi.h
831
832# Sound options
833SND_DEBUG		opt_snd.h
834SND_DIAGNOSTIC		opt_snd.h
835SND_FEEDER_MULTIFORMAT	opt_snd.h
836SND_FEEDER_FULL_MULTIFORMAT	opt_snd.h
837SND_FEEDER_RATE_HP	opt_snd.h
838SND_PCM_64		opt_snd.h
839SND_OLDSTEREO		opt_snd.h
840
841X86EMU
842