rmap_item         123 mm/ksm.c       	struct rmap_item *rmap_list;
rmap_item         139 mm/ksm.c       	struct rmap_item **rmap_list;
rmap_item         196 mm/ksm.c       	struct rmap_item *rmap_list;
rmap_item         308 mm/ksm.c       	rmap_item_cache = KSM_KMEM_CACHE(rmap_item, 0);
rmap_item         377 mm/ksm.c       static inline struct rmap_item *alloc_rmap_item(void)
rmap_item         379 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item         381 mm/ksm.c       	rmap_item = kmem_cache_zalloc(rmap_item_cache, GFP_KERNEL |
rmap_item         383 mm/ksm.c       	if (rmap_item)
rmap_item         385 mm/ksm.c       	return rmap_item;
rmap_item         388 mm/ksm.c       static inline void free_rmap_item(struct rmap_item *rmap_item)
rmap_item         391 mm/ksm.c       	rmap_item->mm = NULL;	/* debug safety */
rmap_item         392 mm/ksm.c       	kmem_cache_free(rmap_item_cache, rmap_item);
rmap_item         533 mm/ksm.c       static void break_cow(struct rmap_item *rmap_item)
rmap_item         535 mm/ksm.c       	struct mm_struct *mm = rmap_item->mm;
rmap_item         536 mm/ksm.c       	unsigned long addr = rmap_item->address;
rmap_item         543 mm/ksm.c       	put_anon_vma(rmap_item->anon_vma);
rmap_item         552 mm/ksm.c       static struct page *get_mergeable_page(struct rmap_item *rmap_item)
rmap_item         554 mm/ksm.c       	struct mm_struct *mm = rmap_item->mm;
rmap_item         555 mm/ksm.c       	unsigned long addr = rmap_item->address;
rmap_item         633 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item         638 mm/ksm.c       	hlist_for_each_entry(rmap_item, &stable_node->hlist, hlist) {
rmap_item         639 mm/ksm.c       		if (rmap_item->hlist.next)
rmap_item         645 mm/ksm.c       		put_anon_vma(rmap_item->anon_vma);
rmap_item         646 mm/ksm.c       		rmap_item->address &= PAGE_MASK;
rmap_item         773 mm/ksm.c       static void remove_rmap_item_from_tree(struct rmap_item *rmap_item)
rmap_item         775 mm/ksm.c       	if (rmap_item->address & STABLE_FLAG) {
rmap_item         779 mm/ksm.c       		stable_node = rmap_item->head;
rmap_item         784 mm/ksm.c       		hlist_del(&rmap_item->hlist);
rmap_item         795 mm/ksm.c       		put_anon_vma(rmap_item->anon_vma);
rmap_item         796 mm/ksm.c       		rmap_item->address &= PAGE_MASK;
rmap_item         798 mm/ksm.c       	} else if (rmap_item->address & UNSTABLE_FLAG) {
rmap_item         807 mm/ksm.c       		age = (unsigned char)(ksm_scan.seqnr - rmap_item->address);
rmap_item         810 mm/ksm.c       			rb_erase(&rmap_item->node,
rmap_item         811 mm/ksm.c       				 root_unstable_tree + NUMA(rmap_item->nid));
rmap_item         813 mm/ksm.c       		rmap_item->address &= PAGE_MASK;
rmap_item         820 mm/ksm.c       				       struct rmap_item **rmap_list)
rmap_item         823 mm/ksm.c       		struct rmap_item *rmap_item = *rmap_list;
rmap_item         824 mm/ksm.c       		*rmap_list = rmap_item->rmap_list;
rmap_item         825 mm/ksm.c       		remove_rmap_item_from_tree(rmap_item);
rmap_item         826 mm/ksm.c       		free_rmap_item(rmap_item);
rmap_item        1276 mm/ksm.c       static int try_to_merge_with_ksm_page(struct rmap_item *rmap_item,
rmap_item        1279 mm/ksm.c       	struct mm_struct *mm = rmap_item->mm;
rmap_item        1284 mm/ksm.c       	vma = find_mergeable_vma(mm, rmap_item->address);
rmap_item        1293 mm/ksm.c       	remove_rmap_item_from_tree(rmap_item);
rmap_item        1296 mm/ksm.c       	rmap_item->anon_vma = vma->anon_vma;
rmap_item        1313 mm/ksm.c       static struct page *try_to_merge_two_pages(struct rmap_item *rmap_item,
rmap_item        1315 mm/ksm.c       					   struct rmap_item *tree_rmap_item,
rmap_item        1320 mm/ksm.c       	err = try_to_merge_with_ksm_page(rmap_item, page, NULL);
rmap_item        1329 mm/ksm.c       			break_cow(rmap_item);
rmap_item        1923 mm/ksm.c       struct rmap_item *unstable_tree_search_insert(struct rmap_item *rmap_item,
rmap_item        1937 mm/ksm.c       		struct rmap_item *tree_rmap_item;
rmap_item        1942 mm/ksm.c       		tree_rmap_item = rb_entry(*new, struct rmap_item, node);
rmap_item        1979 mm/ksm.c       	rmap_item->address |= UNSTABLE_FLAG;
rmap_item        1980 mm/ksm.c       	rmap_item->address |= (ksm_scan.seqnr & SEQNR_MASK);
rmap_item        1981 mm/ksm.c       	DO_NUMA(rmap_item->nid = nid);
rmap_item        1982 mm/ksm.c       	rb_link_node(&rmap_item->node, parent, new);
rmap_item        1983 mm/ksm.c       	rb_insert_color(&rmap_item->node, root);
rmap_item        1994 mm/ksm.c       static void stable_tree_append(struct rmap_item *rmap_item,
rmap_item        2016 mm/ksm.c       	rmap_item->head = stable_node;
rmap_item        2017 mm/ksm.c       	rmap_item->address |= STABLE_FLAG;
rmap_item        2018 mm/ksm.c       	hlist_add_head(&rmap_item->hlist, &stable_node->hlist);
rmap_item        2020 mm/ksm.c       	if (rmap_item->hlist.next)
rmap_item        2035 mm/ksm.c       static void cmp_and_merge_page(struct page *page, struct rmap_item *rmap_item)
rmap_item        2037 mm/ksm.c       	struct mm_struct *mm = rmap_item->mm;
rmap_item        2038 mm/ksm.c       	struct rmap_item *tree_rmap_item;
rmap_item        2056 mm/ksm.c       		    rmap_item->head == stable_node)
rmap_item        2068 mm/ksm.c       	if (kpage == page && rmap_item->head == stable_node) {
rmap_item        2073 mm/ksm.c       	remove_rmap_item_from_tree(rmap_item);
rmap_item        2079 mm/ksm.c       		err = try_to_merge_with_ksm_page(rmap_item, page, kpage);
rmap_item        2086 mm/ksm.c       			stable_tree_append(rmap_item, page_stable_node(kpage),
rmap_item        2101 mm/ksm.c       	if (rmap_item->oldchecksum != checksum) {
rmap_item        2102 mm/ksm.c       		rmap_item->oldchecksum = checksum;
rmap_item        2114 mm/ksm.c       		vma = find_mergeable_vma(mm, rmap_item->address);
rmap_item        2117 mm/ksm.c       					ZERO_PAGE(rmap_item->address));
rmap_item        2134 mm/ksm.c       		unstable_tree_search_insert(rmap_item, page, &tree_page);
rmap_item        2138 mm/ksm.c       		kpage = try_to_merge_two_pages(rmap_item, page,
rmap_item        2163 mm/ksm.c       				stable_tree_append(rmap_item, stable_node,
rmap_item        2176 mm/ksm.c       				break_cow(rmap_item);
rmap_item        2196 mm/ksm.c       static struct rmap_item *get_next_rmap_item(struct mm_slot *mm_slot,
rmap_item        2197 mm/ksm.c       					    struct rmap_item **rmap_list,
rmap_item        2200 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item        2203 mm/ksm.c       		rmap_item = *rmap_list;
rmap_item        2204 mm/ksm.c       		if ((rmap_item->address & PAGE_MASK) == addr)
rmap_item        2205 mm/ksm.c       			return rmap_item;
rmap_item        2206 mm/ksm.c       		if (rmap_item->address > addr)
rmap_item        2208 mm/ksm.c       		*rmap_list = rmap_item->rmap_list;
rmap_item        2209 mm/ksm.c       		remove_rmap_item_from_tree(rmap_item);
rmap_item        2210 mm/ksm.c       		free_rmap_item(rmap_item);
rmap_item        2213 mm/ksm.c       	rmap_item = alloc_rmap_item();
rmap_item        2214 mm/ksm.c       	if (rmap_item) {
rmap_item        2216 mm/ksm.c       		rmap_item->mm = mm_slot->mm;
rmap_item        2217 mm/ksm.c       		rmap_item->address = addr;
rmap_item        2218 mm/ksm.c       		rmap_item->rmap_list = *rmap_list;
rmap_item        2219 mm/ksm.c       		*rmap_list = rmap_item;
rmap_item        2221 mm/ksm.c       	return rmap_item;
rmap_item        2224 mm/ksm.c       static struct rmap_item *scan_get_next_rmap_item(struct page **page)
rmap_item        2229 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item        2314 mm/ksm.c       				rmap_item = get_next_rmap_item(slot,
rmap_item        2316 mm/ksm.c       				if (rmap_item) {
rmap_item        2318 mm/ksm.c       							&rmap_item->rmap_list;
rmap_item        2323 mm/ksm.c       				return rmap_item;
rmap_item        2389 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item        2394 mm/ksm.c       		rmap_item = scan_get_next_rmap_item(&page);
rmap_item        2395 mm/ksm.c       		if (!rmap_item)
rmap_item        2397 mm/ksm.c       		cmp_and_merge_page(page, rmap_item);
rmap_item        2601 mm/ksm.c       	struct rmap_item *rmap_item;
rmap_item        2616 mm/ksm.c       	hlist_for_each_entry(rmap_item, &stable_node->hlist, hlist) {
rmap_item        2617 mm/ksm.c       		struct anon_vma *anon_vma = rmap_item->anon_vma;
rmap_item        2631 mm/ksm.c       			addr = rmap_item->address & ~KSM_FLAG_MASK;
rmap_item        2641 mm/ksm.c       			if ((rmap_item->mm == vma->vm_mm) == search_new_forks)