svn commit: r327424 - head/sys/conf

Colin Percival cperciva at FreeBSD.org
Sun Dec 31 09:21:36 UTC 2017


Author: cperciva
Date: Sun Dec 31 09:21:34 2017
New Revision: 327424
URL: https://svnweb.freebsd.org/changeset/base/327424

Log:
  Connect kern_tslog.c to the build and add TSLOG / TSLOGSIZE kernel options.
  These are intended for debugging purposes and should not be added to
  "generic" kernel configurations since they result in a nontrivial amount
  of memory being set aside for this purpose, can break if kernel modules are
  unloaded, and can potentially leak a dangerous amount of information about
  timestamps used as a source of kernel entropy.

Modified:
  head/sys/conf/NOTES
  head/sys/conf/files
  head/sys/conf/options

Modified: head/sys/conf/NOTES
==============================================================================
--- head/sys/conf/NOTES	Sun Dec 31 09:21:01 2017	(r327423)
+++ head/sys/conf/NOTES	Sun Dec 31 09:21:34 2017	(r327424)
@@ -590,6 +590,20 @@ options 	STACK
 #
 options 	NUM_CORE_FILES=5
 
+#
+# The TSLOG option enables timestamped logging of events, especially
+# function entries/exits, in order to track the time spent by the kernel.
+# In particular, this is useful when investigating the early boot process,
+# before it is possible to use more sophisticated tools like DTrace.
+# The TSLOGSIZE option controls the size of the (preallocated, fixed
+# length) buffer used for storing these events (default: 262144 records).
+#
+# For security reasons the TSLOG option should not be enabled on systems
+# used in production.
+#
+options 	TSLOG
+options 	TSLOGSIZE=262144
+
 

 #####################################################################
 # PERFORMANCE MONITORING OPTIONS

Modified: head/sys/conf/files
==============================================================================
--- head/sys/conf/files	Sun Dec 31 09:21:01 2017	(r327423)
+++ head/sys/conf/files	Sun Dec 31 09:21:34 2017	(r327424)
@@ -3802,6 +3802,7 @@ kern/kern_thr.c			standard
 kern/kern_thread.c		standard
 kern/kern_time.c		standard
 kern/kern_timeout.c		standard
+kern/kern_tslog.c		optional tslog
 kern/kern_umtx.c		standard
 kern/kern_uuid.c		standard
 kern/kern_xxx.c			standard

Modified: head/sys/conf/options
==============================================================================
--- head/sys/conf/options	Sun Dec 31 09:21:01 2017	(r327423)
+++ head/sys/conf/options	Sun Dec 31 09:21:34 2017	(r327424)
@@ -67,6 +67,8 @@ EARLY_PRINTF	opt_global.h
 TEXTDUMP_PREFERRED	opt_ddb.h
 TEXTDUMP_VERBOSE	opt_ddb.h
 NUM_CORE_FILES	opt_global.h
+TSLOG	opt_global.h
+TSLOGSIZE	opt_global.h
 
 # Miscellaneous options.
 ALQ


More information about the svn-src-head mailing list