Lines Matching defs:lm
53 lmapping_verify(lmapping_t *lm)
55 while (lm != NULL) {
56 if (lm->lm_next != NULL)
57 ASSERT(lm->lm_next->lm_addr > lm->lm_addr);
58 lm = lm->lm_next;
72 lmapping_find_cb(lmapping_t *lm, void *arg)
76 if (lm->lm_addr >= lmfa->lmfa_addr) {
77 if (lmfa->lmfa_addr == lm->lm_addr && lmfa->lmfa_size ==
78 lm->lm_size)
79 lmfa->lmfa_ret = lm;
82 lmfa->lmfa_prior = lm;
88 lmapping_walk(lmapping_t *lm, int(*lmapping_walk_cb)(lmapping_t *, void *),
93 while (lm != NULL) {
94 next = lm->lm_next;
95 lmapping_verify(lm);
96 if (lmapping_walk_cb(lm, arg) != 0) {
97 lmapping_verify(lm);
100 lm = next;
105 lmapping_remove(lmapping_t **lm, uintptr_t addr, size_t size)
113 lmapping_verify(*lm);
114 lmapping_walk(*lm, lmapping_find_cb, &lmfa);
120 else if (*lm == lmfa.lmfa_ret)
121 *lm = lmfa.lmfa_ret->lm_next;
125 lmapping_verify(*lm);
131 lmapping_insert(lmapping_t **lm, uintptr_t addr, size_t size)
148 lmapping_verify(*lm);
149 lmapping_walk(*lm, lmapping_find_cb, &lmfa);
155 cur->lm_next = *lm;
156 *lm = cur;
159 lmapping_verify(*lm);
165 lmapping_contains(lmapping_t *lm, uintptr_t addr, size_t size)
173 lmapping_walk(lm, lmapping_find_cb, &lmfa);
179 lmapping_free_cb(lmapping_t *lm, void *arg)
181 free(lm);
186 lmapping_free(lmapping_t **lm)
188 lmapping_walk(*lm, lmapping_free_cb, NULL);
189 *lm = NULL;