Lines Matching refs:mm_slot

125 	struct mm_slot slot;
139 struct ksm_mm_slot *mm_slot; member
238 .mm_slot = &ksm_mm_head,
1016 struct ksm_mm_slot *mm_slot; in unmerge_and_remove_all_rmap_items() local
1017 struct mm_slot *slot; in unmerge_and_remove_all_rmap_items()
1024 struct mm_slot, mm_node); in unmerge_and_remove_all_rmap_items()
1025 ksm_scan.mm_slot = mm_slot_entry(slot, struct ksm_mm_slot, slot); in unmerge_and_remove_all_rmap_items()
1028 for (mm_slot = ksm_scan.mm_slot; mm_slot != &ksm_mm_head; in unmerge_and_remove_all_rmap_items()
1029 mm_slot = ksm_scan.mm_slot) { in unmerge_and_remove_all_rmap_items()
1030 VMA_ITERATOR(vmi, mm_slot->slot.mm, 0); in unmerge_and_remove_all_rmap_items()
1032 mm = mm_slot->slot.mm; in unmerge_and_remove_all_rmap_items()
1052 remove_trailing_rmap_items(&mm_slot->rmap_list); in unmerge_and_remove_all_rmap_items()
1056 slot = list_entry(mm_slot->slot.mm_node.next, in unmerge_and_remove_all_rmap_items()
1057 struct mm_slot, mm_node); in unmerge_and_remove_all_rmap_items()
1058 ksm_scan.mm_slot = mm_slot_entry(slot, struct ksm_mm_slot, slot); in unmerge_and_remove_all_rmap_items()
1060 hash_del(&mm_slot->slot.hash); in unmerge_and_remove_all_rmap_items()
1061 list_del(&mm_slot->slot.mm_node); in unmerge_and_remove_all_rmap_items()
1064 mm_slot_free(mm_slot_cache, mm_slot); in unmerge_and_remove_all_rmap_items()
1080 ksm_scan.mm_slot = &ksm_mm_head; in unmerge_and_remove_all_rmap_items()
2278 static struct ksm_rmap_item *get_next_rmap_item(struct ksm_mm_slot *mm_slot, in get_next_rmap_item() argument
2298 rmap_item->mm = mm_slot->slot.mm; in get_next_rmap_item()
2310 struct ksm_mm_slot *mm_slot; in scan_get_next_rmap_item() local
2311 struct mm_slot *slot; in scan_get_next_rmap_item()
2320 mm_slot = ksm_scan.mm_slot; in scan_get_next_rmap_item()
2321 if (mm_slot == &ksm_mm_head) { in scan_get_next_rmap_item()
2360 slot = list_entry(mm_slot->slot.mm_node.next, in scan_get_next_rmap_item()
2361 struct mm_slot, mm_node); in scan_get_next_rmap_item()
2362 mm_slot = mm_slot_entry(slot, struct ksm_mm_slot, slot); in scan_get_next_rmap_item()
2363 ksm_scan.mm_slot = mm_slot; in scan_get_next_rmap_item()
2369 if (mm_slot == &ksm_mm_head) in scan_get_next_rmap_item()
2373 ksm_scan.rmap_list = &mm_slot->rmap_list; in scan_get_next_rmap_item()
2376 slot = &mm_slot->slot; in scan_get_next_rmap_item()
2406 rmap_item = get_next_rmap_item(mm_slot, in scan_get_next_rmap_item()
2427 ksm_scan.rmap_list = &mm_slot->rmap_list; in scan_get_next_rmap_item()
2436 slot = list_entry(mm_slot->slot.mm_node.next, in scan_get_next_rmap_item()
2437 struct mm_slot, mm_node); in scan_get_next_rmap_item()
2438 ksm_scan.mm_slot = mm_slot_entry(slot, struct ksm_mm_slot, slot); in scan_get_next_rmap_item()
2449 hash_del(&mm_slot->slot.hash); in scan_get_next_rmap_item()
2450 list_del(&mm_slot->slot.mm_node); in scan_get_next_rmap_item()
2453 mm_slot_free(mm_slot_cache, mm_slot); in scan_get_next_rmap_item()
2471 mm_slot = ksm_scan.mm_slot; in scan_get_next_rmap_item()
2472 if (mm_slot != &ksm_mm_head) in scan_get_next_rmap_item()
2706 struct ksm_mm_slot *mm_slot; in __ksm_enter() local
2707 struct mm_slot *slot; in __ksm_enter()
2710 mm_slot = mm_slot_alloc(mm_slot_cache); in __ksm_enter()
2711 if (!mm_slot) in __ksm_enter()
2714 slot = &mm_slot->slot; in __ksm_enter()
2734 list_add_tail(&slot->mm_node, &ksm_scan.mm_slot->slot.mm_node); in __ksm_enter()
2749 struct ksm_mm_slot *mm_slot; in __ksm_exit() local
2750 struct mm_slot *slot; in __ksm_exit()
2764 mm_slot = mm_slot_entry(slot, struct ksm_mm_slot, slot); in __ksm_exit()
2765 if (mm_slot && ksm_scan.mm_slot != mm_slot) { in __ksm_exit()
2766 if (!mm_slot->rmap_list) { in __ksm_exit()
2772 &ksm_scan.mm_slot->slot.mm_node); in __ksm_exit()
2778 mm_slot_free(mm_slot_cache, mm_slot); in __ksm_exit()
2782 } else if (mm_slot) { in __ksm_exit()