6941175 panic assertion failed: scl->scl_writer != curthread,file: common/fs/zfs/spa_misc.c, line: 327
authorGeorge Wilson <George.Wilson@Sun.COM>
Mon, 12 Apr 2010 12:17:33 -0700
changeset 12136 d4a9b5db8021
parent 12135 f5fe9c84fa5e
child 12137 dc7053db81ef
6941175 panic assertion failed: scl->scl_writer != curthread,file: common/fs/zfs/spa_misc.c, line: 327
usr/src/uts/common/fs/zfs/spa_misc.c
--- a/usr/src/uts/common/fs/zfs/spa_misc.c	Mon Apr 12 14:51:39 2010 -0400
+++ b/usr/src/uts/common/fs/zfs/spa_misc.c	Mon Apr 12 12:17:33 2010 -0700
@@ -19,8 +19,7 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
- * Use is subject to license terms.
+ * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  */
 
 #include <sys/zfs_context.h>
@@ -969,9 +968,12 @@
 	 * any I/O when we are doing the actual open.
 	 */
 	if (spa_is_root(spa)) {
-		spa_config_enter(spa, SCL_STATE | SCL_L2ARC, spa, RW_WRITER);
+		int low = locks & ~(SCL_ZIO - 1);
+		int high = locks & ~low;
+
+		spa_config_enter(spa, high, spa, RW_WRITER);
 		vdev_hold(spa->spa_root_vdev);
-		spa_config_enter(spa, SCL_ZIO | oplocks, spa, RW_WRITER);
+		spa_config_enter(spa, low, spa, RW_WRITER);
 	} else {
 		spa_config_enter(spa, locks, spa, RW_WRITER);
 	}