Print this page
5981 Deadlock in dmu_objset_find_dp

@@ -1044,10 +1044,17 @@
         ASSERT(!rrw_held(&dp->dp_config_rwlock, RW_READER));
         rrw_enter(&dp->dp_config_rwlock, RW_READER, tag);
 }
 
 void
+dsl_pool_config_enter_prio(dsl_pool_t *dp, void *tag)
+{
+        ASSERT(!rrw_held(&dp->dp_config_rwlock, RW_READER));
+        rrw_enter_read_prio(&dp->dp_config_rwlock, tag);
+}
+
+void
 dsl_pool_config_exit(dsl_pool_t *dp, void *tag)
 {
         rrw_exit(&dp->dp_config_rwlock, tag);
 }