svn commit: r192785 - in user/kmacy/releng_7_2_fcs/sys: amd64/conf conf kern

Kip Macy kmacy at FreeBSD.org
Tue May 26 04:33:17 UTC 2009


Author: kmacy
Date: Tue May 26 04:33:16 2009
New Revision: 192785
URL: http://svn.freebsd.org/changeset/base/192785

Log:
  add the option of having condvars ignoring extra locks held
  this makes WITNESS much quietery (i.e. more useful) with ZFS

Modified:
  user/kmacy/releng_7_2_fcs/sys/amd64/conf/GENERIC_MINUS
  user/kmacy/releng_7_2_fcs/sys/conf/options
  user/kmacy/releng_7_2_fcs/sys/kern/kern_condvar.c

Modified: user/kmacy/releng_7_2_fcs/sys/amd64/conf/GENERIC_MINUS
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/amd64/conf/GENERIC_MINUS	Tue May 26 03:56:56 2009	(r192784)
+++ user/kmacy/releng_7_2_fcs/sys/amd64/conf/GENERIC_MINUS	Tue May 26 04:33:16 2009	(r192785)
@@ -73,6 +73,7 @@ options		INVARIANT_SUPPORT
 
 options		WITNESS
 options		WITNESS_SKIPSPIN
+options		WITNESS_SKIPCV
 options		DEBUG
 options		KDB
 options		DDB

Modified: user/kmacy/releng_7_2_fcs/sys/conf/options
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/conf/options	Tue May 26 03:56:56 2009	(r192784)
+++ user/kmacy/releng_7_2_fcs/sys/conf/options	Tue May 26 04:33:16 2009	(r192785)
@@ -642,6 +642,7 @@ KTR_VERBOSE		opt_ktr.h
 WITNESS			opt_global.h
 WITNESS_KDB		opt_witness.h
 WITNESS_SKIPSPIN	opt_witness.h
+WITNESS_SKIPCV		opt_witness.h
 
 # options for ACPI support
 ACPI_DEBUG		opt_acpi.h

Modified: user/kmacy/releng_7_2_fcs/sys/kern/kern_condvar.c
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/kern/kern_condvar.c	Tue May 26 03:56:56 2009	(r192784)
+++ user/kmacy/releng_7_2_fcs/sys/kern/kern_condvar.c	Tue May 26 04:33:16 2009	(r192785)
@@ -106,8 +106,10 @@ _cv_wait(struct cv *cvp, struct lock_obj
 		ktrcsw(1, 0);
 #endif
 	CV_ASSERT(cvp, lock, td);
+#ifndef WITNESS_SKIPCV
 	WITNESS_WARN(WARN_GIANTOK, lock,
 	    "Waiting on \"%s\"", cvp->cv_description);
+#endif
 	WITNESS_SAVE(lock, lock_witness);
 	class = LOCK_CLASS(lock);
 


More information about the svn-src-user mailing list