Lines Matching defs:chmp
48 chfs_remap_leb(struct chfs_mount *chmp)
55 KASSERT(!rw_write_held(&chmp->chm_lock_wbuf));
56 KASSERT(mutex_owned(&chmp->chm_lock_mountfields));
57 KASSERT(mutex_owned(&chmp->chm_lock_sizes));
59 if (!chmp->chm_nr_erasable_blocks) {
66 if (!TAILQ_EMPTY(&chmp->chm_erasable_pending_wbuf_queue)) {
67 cheb = TAILQ_FIRST(&chmp->chm_erasable_pending_wbuf_queue);
68 TAILQ_REMOVE(&chmp->chm_erasable_pending_wbuf_queue, cheb, queue);
69 if (chmp->chm_wbuf_len) {
70 mutex_exit(&chmp->chm_lock_sizes);
71 chfs_flush_pending_wbuf(chmp);
72 mutex_enter(&chmp->chm_lock_sizes);
74 TAILQ_INSERT_TAIL(&chmp->chm_erase_pending_queue, cheb, queue);
75 chmp->chm_nr_erasable_blocks++;
82 cheb = TAILQ_FIRST(&chmp->chm_erase_pending_queue);
83 TAILQ_REMOVE(&chmp->chm_erase_pending_queue, cheb, queue);
84 chmp->chm_nr_erasable_blocks--;
95 err = chfs_unmap_leb(chmp, cheb->lnr);
99 err = chfs_map_leb(chmp, cheb->lnr);
102 /* Reset state to default and change chmp sizes too */
103 chfs_change_size_dirty(chmp, cheb, -dirty);
104 chfs_change_size_unchecked(chmp, cheb, -unchecked);
105 chfs_change_size_used(chmp, cheb, -used);
106 chfs_change_size_free(chmp, cheb, chmp->chm_ebh->eb_size - free);
107 chfs_change_size_wasted(chmp, cheb, -wasted);
112 KASSERT(cheb->free_size == chmp->chm_ebh->eb_size);
118 TAILQ_INSERT_TAIL(&chmp->chm_free_queue, cheb, queue);
119 chmp->chm_nr_free_blocks++;
120 dbg("remaped (free: %d, erasable: %d)\n", chmp->chm_nr_free_blocks, chmp->chm_nr_erasable_blocks);
121 KASSERT(!TAILQ_EMPTY(&chmp->chm_free_queue));