Lines Matching refs:child

346 	for (vmm_gpt_node_t *child = parent->vgn_children;  in vmm_gpt_node_find_child()  local
347 child != NULL && child->vgn_index <= index; in vmm_gpt_node_find_child()
348 child = child->vgn_sib_next) { in vmm_gpt_node_find_child()
349 if (child->vgn_index == index) in vmm_gpt_node_find_child()
350 return (child); in vmm_gpt_node_find_child()
365 vmm_gpt_node_t *child, uint64_t gpa, vmm_gpt_node_t *prev_sibling) in vmm_gpt_node_add() argument
368 ASSERT3U(child->vgn_parent, ==, NULL); in vmm_gpt_node_add()
371 child->vgn_index = idx; in vmm_gpt_node_add()
372 child->vgn_level = parent->vgn_level + 1; in vmm_gpt_node_add()
373 child->vgn_gpa = gpa & vmm_gpt_lvl_mask(parent->vgn_level); in vmm_gpt_node_add()
376 child->vgn_parent = parent; in vmm_gpt_node_add()
378 ASSERT3U(prev_sibling->vgn_gpa, <, child->vgn_gpa); in vmm_gpt_node_add()
380 child->vgn_sib_next = prev_sibling->vgn_sib_next; in vmm_gpt_node_add()
381 if (child->vgn_sib_next != NULL) { in vmm_gpt_node_add()
382 child->vgn_sib_next->vgn_sib_prev = child; in vmm_gpt_node_add()
384 child->vgn_sib_prev = prev_sibling; in vmm_gpt_node_add()
385 prev_sibling->vgn_sib_next = child; in vmm_gpt_node_add()
389 ASSERT3U(next_sibling->vgn_gpa, >, child->vgn_gpa); in vmm_gpt_node_add()
392 child->vgn_sib_next = next_sibling; in vmm_gpt_node_add()
393 child->vgn_sib_prev = NULL; in vmm_gpt_node_add()
394 next_sibling->vgn_sib_prev = child; in vmm_gpt_node_add()
395 parent->vgn_children = child; in vmm_gpt_node_add()
397 parent->vgn_children = child; in vmm_gpt_node_add()
398 child->vgn_sib_next = NULL; in vmm_gpt_node_add()
399 child->vgn_sib_prev = NULL; in vmm_gpt_node_add()
404 gpt->vgpt_pte_ops->vpeo_map_table(child->vgn_host_pfn); in vmm_gpt_node_add()
412 vmm_gpt_node_remove(vmm_gpt_node_t *child) in vmm_gpt_node_remove() argument
414 ASSERT3P(child->vgn_children, ==, NULL); in vmm_gpt_node_remove()
415 ASSERT3U(child->vgn_ref_cnt, ==, 0); in vmm_gpt_node_remove()
416 ASSERT3P(child->vgn_parent, !=, NULL); in vmm_gpt_node_remove()
419 vmm_gpt_node_t *parent = child->vgn_parent; in vmm_gpt_node_remove()
420 vmm_gpt_node_t *prev = child->vgn_sib_prev; in vmm_gpt_node_remove()
421 vmm_gpt_node_t *next = child->vgn_sib_next; in vmm_gpt_node_remove()
423 ASSERT3P(prev->vgn_sib_next, ==, child); in vmm_gpt_node_remove()
427 ASSERT3P(next->vgn_sib_prev, ==, child); in vmm_gpt_node_remove()
431 ASSERT3P(parent->vgn_children, ==, child); in vmm_gpt_node_remove()
434 child->vgn_parent = NULL; in vmm_gpt_node_remove()
435 child->vgn_sib_next = NULL; in vmm_gpt_node_remove()
436 child->vgn_sib_prev = NULL; in vmm_gpt_node_remove()
437 parent->vgn_entries[child->vgn_index] = 0; in vmm_gpt_node_remove()
440 vmm_gpt_node_free(child); in vmm_gpt_node_remove()