Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Aug 2013 21:42:14 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r254195 - head/sys/kern
Message-ID:  <201308102142.r7ALgEGd094684@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Sat Aug 10 21:42:14 2013
New Revision: 254195
URL: http://svnweb.freebsd.org/changeset/base/254195

Log:
  The r254167 moved initialization of the sleepqueues before the witness
  is operational.  init_sleepqueues() initializes 256 mutexes, which,
  due to witness still being cold, started to overflow the pending_locks
  array.
  
  As stated in the reported panic message, increase WITNESS_PENDLIST
  from 768 to 1024, which provides space for additional 256 locks.
  
  Reported by:	many
  Tested by:	rakuco, bdrewery

Modified:
  head/sys/kern/subr_witness.c

Modified: head/sys/kern/subr_witness.c
==============================================================================
--- head/sys/kern/subr_witness.c	Sat Aug 10 21:31:35 2013	(r254194)
+++ head/sys/kern/subr_witness.c	Sat Aug 10 21:42:14 2013	(r254195)
@@ -135,7 +135,7 @@ __FBSDID("$FreeBSD$");
 #define	WITNESS_COUNT 		1024
 #define	WITNESS_CHILDCOUNT 	(WITNESS_COUNT * 4)
 #define	WITNESS_HASH_SIZE	251	/* Prime, gives load factor < 2 */
-#define	WITNESS_PENDLIST	768
+#define	WITNESS_PENDLIST	1024
 
 /* Allocate 256 KB of stack data space */
 #define	WITNESS_LO_DATA_COUNT	2048



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201308102142.r7ALgEGd094684>