Print this page
5981 Deadlock in dmu_objset_find_dp


 135 int dsl_pool_init(spa_t *spa, uint64_t txg, dsl_pool_t **dpp);
 136 int dsl_pool_open(dsl_pool_t *dp);
 137 void dsl_pool_close(dsl_pool_t *dp);
 138 dsl_pool_t *dsl_pool_create(spa_t *spa, nvlist_t *zplprops, uint64_t txg);
 139 void dsl_pool_sync(dsl_pool_t *dp, uint64_t txg);
 140 void dsl_pool_sync_done(dsl_pool_t *dp, uint64_t txg);
 141 int dsl_pool_sync_context(dsl_pool_t *dp);
 142 uint64_t dsl_pool_adjustedsize(dsl_pool_t *dp, boolean_t netfree);
 143 uint64_t dsl_pool_adjustedfree(dsl_pool_t *dp, boolean_t netfree);
 144 void dsl_pool_dirty_space(dsl_pool_t *dp, int64_t space, dmu_tx_t *tx);
 145 void dsl_pool_undirty_space(dsl_pool_t *dp, int64_t space, uint64_t txg);
 146 void dsl_free(dsl_pool_t *dp, uint64_t txg, const blkptr_t *bpp);
 147 void dsl_free_sync(zio_t *pio, dsl_pool_t *dp, uint64_t txg,
 148     const blkptr_t *bpp);
 149 void dsl_pool_create_origin(dsl_pool_t *dp, dmu_tx_t *tx);
 150 void dsl_pool_upgrade_clones(dsl_pool_t *dp, dmu_tx_t *tx);
 151 void dsl_pool_upgrade_dir_clones(dsl_pool_t *dp, dmu_tx_t *tx);
 152 void dsl_pool_mos_diduse_space(dsl_pool_t *dp,
 153     int64_t used, int64_t comp, int64_t uncomp);
 154 void dsl_pool_config_enter(dsl_pool_t *dp, void *tag);

 155 void dsl_pool_config_exit(dsl_pool_t *dp, void *tag);
 156 boolean_t dsl_pool_config_held(dsl_pool_t *dp);
 157 boolean_t dsl_pool_config_held_writer(dsl_pool_t *dp);
 158 boolean_t dsl_pool_need_dirty_delay(dsl_pool_t *dp);
 159 
 160 taskq_t *dsl_pool_vnrele_taskq(dsl_pool_t *dp);
 161 
 162 int dsl_pool_user_hold(dsl_pool_t *dp, uint64_t dsobj,
 163     const char *tag, uint64_t now, dmu_tx_t *tx);
 164 int dsl_pool_user_release(dsl_pool_t *dp, uint64_t dsobj,
 165     const char *tag, dmu_tx_t *tx);
 166 void dsl_pool_clean_tmp_userrefs(dsl_pool_t *dp);
 167 int dsl_pool_open_special_dir(dsl_pool_t *dp, const char *name, dsl_dir_t **);
 168 int dsl_pool_hold(const char *name, void *tag, dsl_pool_t **dp);
 169 void dsl_pool_rele(dsl_pool_t *dp, void *tag);
 170 
 171 #ifdef  __cplusplus
 172 }
 173 #endif
 174 


 135 int dsl_pool_init(spa_t *spa, uint64_t txg, dsl_pool_t **dpp);
 136 int dsl_pool_open(dsl_pool_t *dp);
 137 void dsl_pool_close(dsl_pool_t *dp);
 138 dsl_pool_t *dsl_pool_create(spa_t *spa, nvlist_t *zplprops, uint64_t txg);
 139 void dsl_pool_sync(dsl_pool_t *dp, uint64_t txg);
 140 void dsl_pool_sync_done(dsl_pool_t *dp, uint64_t txg);
 141 int dsl_pool_sync_context(dsl_pool_t *dp);
 142 uint64_t dsl_pool_adjustedsize(dsl_pool_t *dp, boolean_t netfree);
 143 uint64_t dsl_pool_adjustedfree(dsl_pool_t *dp, boolean_t netfree);
 144 void dsl_pool_dirty_space(dsl_pool_t *dp, int64_t space, dmu_tx_t *tx);
 145 void dsl_pool_undirty_space(dsl_pool_t *dp, int64_t space, uint64_t txg);
 146 void dsl_free(dsl_pool_t *dp, uint64_t txg, const blkptr_t *bpp);
 147 void dsl_free_sync(zio_t *pio, dsl_pool_t *dp, uint64_t txg,
 148     const blkptr_t *bpp);
 149 void dsl_pool_create_origin(dsl_pool_t *dp, dmu_tx_t *tx);
 150 void dsl_pool_upgrade_clones(dsl_pool_t *dp, dmu_tx_t *tx);
 151 void dsl_pool_upgrade_dir_clones(dsl_pool_t *dp, dmu_tx_t *tx);
 152 void dsl_pool_mos_diduse_space(dsl_pool_t *dp,
 153     int64_t used, int64_t comp, int64_t uncomp);
 154 void dsl_pool_config_enter(dsl_pool_t *dp, void *tag);
 155 void dsl_pool_config_enter_prio(dsl_pool_t *dp, void *tag);
 156 void dsl_pool_config_exit(dsl_pool_t *dp, void *tag);
 157 boolean_t dsl_pool_config_held(dsl_pool_t *dp);
 158 boolean_t dsl_pool_config_held_writer(dsl_pool_t *dp);
 159 boolean_t dsl_pool_need_dirty_delay(dsl_pool_t *dp);
 160 
 161 taskq_t *dsl_pool_vnrele_taskq(dsl_pool_t *dp);
 162 
 163 int dsl_pool_user_hold(dsl_pool_t *dp, uint64_t dsobj,
 164     const char *tag, uint64_t now, dmu_tx_t *tx);
 165 int dsl_pool_user_release(dsl_pool_t *dp, uint64_t dsobj,
 166     const char *tag, dmu_tx_t *tx);
 167 void dsl_pool_clean_tmp_userrefs(dsl_pool_t *dp);
 168 int dsl_pool_open_special_dir(dsl_pool_t *dp, const char *name, dsl_dir_t **);
 169 int dsl_pool_hold(const char *name, void *tag, dsl_pool_t **dp);
 170 void dsl_pool_rele(dsl_pool_t *dp, void *tag);
 171 
 172 #ifdef  __cplusplus
 173 }
 174 #endif
 175