ktr(4): Ensure that KTR_ENTRIES is 2^n and document that it has to be.
authorSascha Wildner <saw@online.de>
Sat, 16 Jul 2011 09:52:08 +0000 (11:52 +0200)
committerSascha Wildner <saw@online.de>
Sat, 16 Jul 2011 09:52:08 +0000 (11:52 +0200)
Reported-by: alexh
share/man/man4/ktr.4
sys/kern/kern_ktr.c

index 805edfe..05bebfa 100644 (file)
@@ -23,9 +23,8 @@
 .\" SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man4/ktr.4,v 1.9 2003/09/08 19:57:19 ru Exp $
-.\" $DragonFly: src/share/man/man4/ktr.4,v 1.11 2008/10/01 10:53:48 swildner Exp $
 .\"
-.Dd October 1, 2008
+.Dd July 16, 2011
 .Dt KTR 4
 .Os
 .Sh NAME
@@ -66,7 +65,7 @@ is
 The
 .Dv KTR_ENTRIES
 option sets the size of the buffer of events.
-It should be a power of two.
+It must be a power of two.
 The size of the buffer in the currently running kernel can be found via the
 read-only sysctl
 .Va debug.ktr.entries .
index 6d9021a..9f902f0 100644 (file)
@@ -61,9 +61,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  */
-/*
- * $DragonFly: src/sys/kern/kern_ktr.c,v 1.23 2008/02/12 23:33:23 corecode Exp $
- */
+
 /*
  * Kernel tracepoint facility.
  */
@@ -95,6 +93,8 @@
 
 #ifndef KTR_ENTRIES
 #define        KTR_ENTRIES             2048
+#elif (KTR_ENTRIES & KTR_ENTRIES - 1)
+#error KTR_ENTRIES must be a power of two
 #endif
 #define KTR_ENTRIES_MASK       (KTR_ENTRIES - 1)