mm_slot           108 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot           355 mm/khugepaged.c 					  sizeof(struct mm_slot),
mm_slot           356 mm/khugepaged.c 					  __alignof__(struct mm_slot), 0, NULL);
mm_slot           372 mm/khugepaged.c static inline struct mm_slot *alloc_mm_slot(void)
mm_slot           379 mm/khugepaged.c static inline void free_mm_slot(struct mm_slot *mm_slot)
mm_slot           381 mm/khugepaged.c 	kmem_cache_free(mm_slot_cache, mm_slot);
mm_slot           384 mm/khugepaged.c static struct mm_slot *get_mm_slot(struct mm_struct *mm)
mm_slot           386 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot           388 mm/khugepaged.c 	hash_for_each_possible(mm_slots_hash, mm_slot, hash, (unsigned long)mm)
mm_slot           389 mm/khugepaged.c 		if (mm == mm_slot->mm)
mm_slot           390 mm/khugepaged.c 			return mm_slot;
mm_slot           396 mm/khugepaged.c 				    struct mm_slot *mm_slot)
mm_slot           398 mm/khugepaged.c 	mm_slot->mm = mm;
mm_slot           399 mm/khugepaged.c 	hash_add(mm_slots_hash, &mm_slot->hash, (long)mm);
mm_slot           433 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot           436 mm/khugepaged.c 	mm_slot = alloc_mm_slot();
mm_slot           437 mm/khugepaged.c 	if (!mm_slot)
mm_slot           443 mm/khugepaged.c 		free_mm_slot(mm_slot);
mm_slot           448 mm/khugepaged.c 	insert_to_mm_slots_hash(mm, mm_slot);
mm_slot           454 mm/khugepaged.c 	list_add_tail(&mm_slot->mm_node, &khugepaged_scan.mm_head);
mm_slot           486 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot           490 mm/khugepaged.c 	mm_slot = get_mm_slot(mm);
mm_slot           491 mm/khugepaged.c 	if (mm_slot && khugepaged_scan.mm_slot != mm_slot) {
mm_slot           492 mm/khugepaged.c 		hash_del(&mm_slot->hash);
mm_slot           493 mm/khugepaged.c 		list_del(&mm_slot->mm_node);
mm_slot           500 mm/khugepaged.c 		free_mm_slot(mm_slot);
mm_slot           502 mm/khugepaged.c 	} else if (mm_slot) {
mm_slot          1240 mm/khugepaged.c static void collect_mm_slot(struct mm_slot *mm_slot)
mm_slot          1242 mm/khugepaged.c 	struct mm_struct *mm = mm_slot->mm;
mm_slot          1248 mm/khugepaged.c 		hash_del(&mm_slot->hash);
mm_slot          1249 mm/khugepaged.c 		list_del(&mm_slot->mm_node);
mm_slot          1258 mm/khugepaged.c 		free_mm_slot(mm_slot);
mm_slot          1271 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot          1276 mm/khugepaged.c 	mm_slot = get_mm_slot(mm);
mm_slot          1277 mm/khugepaged.c 	if (likely(mm_slot && mm_slot->nr_pte_mapped_thp < MAX_PTE_MAPPED_THP))
mm_slot          1278 mm/khugepaged.c 		mm_slot->pte_mapped_thp[mm_slot->nr_pte_mapped_thp++] = addr;
mm_slot          1394 mm/khugepaged.c static int khugepaged_collapse_pte_mapped_thps(struct mm_slot *mm_slot)
mm_slot          1396 mm/khugepaged.c 	struct mm_struct *mm = mm_slot->mm;
mm_slot          1399 mm/khugepaged.c 	if (likely(mm_slot->nr_pte_mapped_thp == 0))
mm_slot          1408 mm/khugepaged.c 	for (i = 0; i < mm_slot->nr_pte_mapped_thp; i++)
mm_slot          1409 mm/khugepaged.c 		collapse_pte_mapped_thp(mm, mm_slot->pte_mapped_thp[i]);
mm_slot          1412 mm/khugepaged.c 	mm_slot->nr_pte_mapped_thp = 0;
mm_slot          1897 mm/khugepaged.c static int khugepaged_collapse_pte_mapped_thps(struct mm_slot *mm_slot)
mm_slot          1908 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot          1916 mm/khugepaged.c 	if (khugepaged_scan.mm_slot)
mm_slot          1917 mm/khugepaged.c 		mm_slot = khugepaged_scan.mm_slot;
mm_slot          1919 mm/khugepaged.c 		mm_slot = list_entry(khugepaged_scan.mm_head.next,
mm_slot          1920 mm/khugepaged.c 				     struct mm_slot, mm_node);
mm_slot          1922 mm/khugepaged.c 		khugepaged_scan.mm_slot = mm_slot;
mm_slot          1925 mm/khugepaged.c 	khugepaged_collapse_pte_mapped_thps(mm_slot);
mm_slot          1927 mm/khugepaged.c 	mm = mm_slot->mm;
mm_slot          2004 mm/khugepaged.c 	VM_BUG_ON(khugepaged_scan.mm_slot != mm_slot);
mm_slot          2015 mm/khugepaged.c 		if (mm_slot->mm_node.next != &khugepaged_scan.mm_head) {
mm_slot          2016 mm/khugepaged.c 			khugepaged_scan.mm_slot = list_entry(
mm_slot          2017 mm/khugepaged.c 				mm_slot->mm_node.next,
mm_slot          2018 mm/khugepaged.c 				struct mm_slot, mm_node);
mm_slot          2021 mm/khugepaged.c 			khugepaged_scan.mm_slot = NULL;
mm_slot          2025 mm/khugepaged.c 		collect_mm_slot(mm_slot);
mm_slot          2062 mm/khugepaged.c 		if (!khugepaged_scan.mm_slot)
mm_slot          2105 mm/khugepaged.c 	struct mm_slot *mm_slot;
mm_slot          2116 mm/khugepaged.c 	mm_slot = khugepaged_scan.mm_slot;
mm_slot          2117 mm/khugepaged.c 	khugepaged_scan.mm_slot = NULL;
mm_slot          2118 mm/khugepaged.c 	if (mm_slot)
mm_slot          2119 mm/khugepaged.c 		collect_mm_slot(mm_slot);
mm_slot           137 mm/ksm.c       	struct mm_slot *mm_slot;
mm_slot           234 mm/ksm.c       static struct mm_slot ksm_mm_head = {
mm_slot           238 mm/ksm.c       	.mm_slot = &ksm_mm_head,
mm_slot           316 mm/ksm.c       	mm_slot_cache = KSM_KMEM_CACHE(mm_slot, 0);
mm_slot           412 mm/ksm.c       static inline struct mm_slot *alloc_mm_slot(void)
mm_slot           419 mm/ksm.c       static inline void free_mm_slot(struct mm_slot *mm_slot)
mm_slot           421 mm/ksm.c       	kmem_cache_free(mm_slot_cache, mm_slot);
mm_slot           424 mm/ksm.c       static struct mm_slot *get_mm_slot(struct mm_struct *mm)
mm_slot           426 mm/ksm.c       	struct mm_slot *slot;
mm_slot           436 mm/ksm.c       				    struct mm_slot *mm_slot)
mm_slot           438 mm/ksm.c       	mm_slot->mm = mm;
mm_slot           439 mm/ksm.c       	hash_add(mm_slots_hash, &mm_slot->link, (unsigned long)mm);
mm_slot           819 mm/ksm.c       static void remove_trailing_rmap_items(struct mm_slot *mm_slot,
mm_slot           966 mm/ksm.c       	struct mm_slot *mm_slot;
mm_slot           972 mm/ksm.c       	ksm_scan.mm_slot = list_entry(ksm_mm_head.mm_list.next,
mm_slot           973 mm/ksm.c       						struct mm_slot, mm_list);
mm_slot           976 mm/ksm.c       	for (mm_slot = ksm_scan.mm_slot;
mm_slot           977 mm/ksm.c       			mm_slot != &ksm_mm_head; mm_slot = ksm_scan.mm_slot) {
mm_slot           978 mm/ksm.c       		mm = mm_slot->mm;
mm_slot           991 mm/ksm.c       		remove_trailing_rmap_items(mm_slot, &mm_slot->rmap_list);
mm_slot           995 mm/ksm.c       		ksm_scan.mm_slot = list_entry(mm_slot->mm_list.next,
mm_slot           996 mm/ksm.c       						struct mm_slot, mm_list);
mm_slot           998 mm/ksm.c       			hash_del(&mm_slot->link);
mm_slot           999 mm/ksm.c       			list_del(&mm_slot->mm_list);
mm_slot          1002 mm/ksm.c       			free_mm_slot(mm_slot);
mm_slot          1017 mm/ksm.c       	ksm_scan.mm_slot = &ksm_mm_head;
mm_slot          2196 mm/ksm.c       static struct rmap_item *get_next_rmap_item(struct mm_slot *mm_slot,
mm_slot          2216 mm/ksm.c       		rmap_item->mm = mm_slot->mm;
mm_slot          2227 mm/ksm.c       	struct mm_slot *slot;
mm_slot          2235 mm/ksm.c       	slot = ksm_scan.mm_slot;
mm_slot          2273 mm/ksm.c       		slot = list_entry(slot->mm_list.next, struct mm_slot, mm_list);
mm_slot          2274 mm/ksm.c       		ksm_scan.mm_slot = slot;
mm_slot          2342 mm/ksm.c       	ksm_scan.mm_slot = list_entry(slot->mm_list.next,
mm_slot          2343 mm/ksm.c       						struct mm_slot, mm_list);
mm_slot          2375 mm/ksm.c       	slot = ksm_scan.mm_slot;
mm_slot          2492 mm/ksm.c       	struct mm_slot *mm_slot;
mm_slot          2495 mm/ksm.c       	mm_slot = alloc_mm_slot();
mm_slot          2496 mm/ksm.c       	if (!mm_slot)
mm_slot          2503 mm/ksm.c       	insert_to_mm_slots_hash(mm, mm_slot);
mm_slot          2515 mm/ksm.c       		list_add_tail(&mm_slot->mm_list, &ksm_mm_head.mm_list);
mm_slot          2517 mm/ksm.c       		list_add_tail(&mm_slot->mm_list, &ksm_scan.mm_slot->mm_list);
mm_slot          2531 mm/ksm.c       	struct mm_slot *mm_slot;
mm_slot          2544 mm/ksm.c       	mm_slot = get_mm_slot(mm);
mm_slot          2545 mm/ksm.c       	if (mm_slot && ksm_scan.mm_slot != mm_slot) {
mm_slot          2546 mm/ksm.c       		if (!mm_slot->rmap_list) {
mm_slot          2547 mm/ksm.c       			hash_del(&mm_slot->link);
mm_slot          2548 mm/ksm.c       			list_del(&mm_slot->mm_list);
mm_slot          2551 mm/ksm.c       			list_move(&mm_slot->mm_list,
mm_slot          2552 mm/ksm.c       				  &ksm_scan.mm_slot->mm_list);
mm_slot          2558 mm/ksm.c       		free_mm_slot(mm_slot);
mm_slot          2561 mm/ksm.c       	} else if (mm_slot) {