svn commit: r249190 - in projects/counters/sys: cddl/contrib/opensolaris/uts/common/fs/zfs sys

Gleb Smirnoff glebius at FreeBSD.org
Sat Apr 6 08:36:27 UTC 2013


Author: glebius
Date: Sat Apr  6 08:36:26 2013
New Revision: 249190
URL: http://svnweb.freebsd.org/changeset/base/249190

Log:
  Merge head r243428 through r249189.

Modified:
  projects/counters/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  projects/counters/sys/sys/proc.h
  projects/counters/sys/sys/systm.h
Directory Properties:
  projects/counters/   (props changed)
  projects/counters/sys/   (props changed)
  projects/counters/sys/cddl/contrib/opensolaris/   (props changed)

Modified: projects/counters/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
==============================================================================
--- projects/counters/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Sat Apr  6 08:23:38 2013	(r249189)
+++ projects/counters/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Sat Apr  6 08:36:26 2013	(r249190)
@@ -22,6 +22,7 @@
 /*
  * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2012 by Delphix. All rights reserved.
+ * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  * Copyright (c) 2013 Martin Matuska <mm at FreeBSD.org>. All rights reserved.
  */
 
@@ -1525,7 +1526,8 @@ spa_check_removed(vdev_t *vd)
 	for (int c = 0; c < vd->vdev_children; c++)
 		spa_check_removed(vd->vdev_child[c]);
 
-	if (vd->vdev_ops->vdev_op_leaf && vdev_is_dead(vd)) {
+	if (vd->vdev_ops->vdev_op_leaf && vdev_is_dead(vd) &&
+	    !vd->vdev_ishole) {
 		zfs_post_autoreplace(vd->vdev_spa, vd);
 		spa_event_notify(vd->vdev_spa, vd, ESC_ZFS_VDEV_CHECK);
 	}

Modified: projects/counters/sys/sys/proc.h
==============================================================================
--- projects/counters/sys/sys/proc.h	Sat Apr  6 08:23:38 2013	(r249189)
+++ projects/counters/sys/sys/proc.h	Sat Apr  6 08:36:26 2013	(r249190)
@@ -341,9 +341,6 @@ do {									\
 #define	THREAD_LOCKPTR_ASSERT(td, lock)
 #endif
 
-#define	CRITICAL_ASSERT(td)						\
-    KASSERT((td)->td_critnest >= 1, ("Not in critical section"));
-
 /*
  * Flags kept in td_flags:
  * To change these you MUST have the scheduler lock.

Modified: projects/counters/sys/sys/systm.h
==============================================================================
--- projects/counters/sys/sys/systm.h	Sat Apr  6 08:23:38 2013	(r249189)
+++ projects/counters/sys/sys/systm.h	Sat Apr  6 08:36:26 2013	(r249190)
@@ -112,6 +112,12 @@ void	kassert_panic(const char *fmt, ...)
 	    ((uintptr_t)&(var) & (sizeof(void *) - 1)) == 0, msg)
 
 /*
+ * Assert that a thread is in critical(9) section.
+ */
+#define	CRITICAL_ASSERT(td)						\
+	KASSERT((td)->td_critnest >= 1, ("Not in critical section"));
+ 
+/*
  * If we have already panic'd and this is the thread that called
  * panic(), then don't block on any mutexes but silently succeed.
  * Otherwise, the kernel will deadlock since the scheduler isn't


More information about the svn-src-projects mailing list