From owner-svn-src-projects@FreeBSD.ORG Sat Apr 6 08:36:27 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 73C991FC; Sat, 6 Apr 2013 08:36:27 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4BEF4659; Sat, 6 Apr 2013 08:36:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.6/8.14.6) with ESMTP id r368aR9t014598; Sat, 6 Apr 2013 08:36:27 GMT (envelope-from glebius@svn.freebsd.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.6/8.14.5/Submit) id r368aQoJ014592; Sat, 6 Apr 2013 08:36:26 GMT (envelope-from glebius@svn.freebsd.org) Message-Id: <201304060836.r368aQoJ014592@svn.freebsd.org> From: Gleb Smirnoff Date: Sat, 6 Apr 2013 08:36:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r249190 - in projects/counters/sys: cddl/contrib/opensolaris/uts/common/fs/zfs sys X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 06 Apr 2013 08:36:27 -0000 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 . 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