Searched refs:ksm_scan (Results 1 - 1 of 1) sorted by relevance
/linux-4.4.14/mm/ |
H A D | ksm.c | 110 * struct ksm_scan - cursor for scanning 116 * There is only the one ksm_scan instance of this cursor structure. 118 struct ksm_scan { struct 200 static struct ksm_scan ksm_scan = { variable in typeref:struct:ksm_scan 646 age = (unsigned char)(ksm_scan.seqnr - rmap_item->address); remove_rmap_item_from_tree() 776 ksm_scan.mm_slot = list_entry(ksm_mm_head.mm_list.next, unmerge_and_remove_all_rmap_items() 780 for (mm_slot = ksm_scan.mm_slot; unmerge_and_remove_all_rmap_items() 781 mm_slot != &ksm_mm_head; mm_slot = ksm_scan.mm_slot) { unmerge_and_remove_all_rmap_items() 798 ksm_scan.mm_slot = list_entry(mm_slot->mm_list.next, unmerge_and_remove_all_rmap_items() 817 ksm_scan.seqnr = 0; unmerge_and_remove_all_rmap_items() 823 ksm_scan.mm_slot = &ksm_mm_head; unmerge_and_remove_all_rmap_items() 1398 rmap_item->address |= (ksm_scan.seqnr & SEQNR_MASK); unstable_tree_search_insert() 1565 slot = ksm_scan.mm_slot; scan_get_next_rmap_item() 1605 ksm_scan.mm_slot = slot; scan_get_next_rmap_item() 1614 ksm_scan.address = 0; scan_get_next_rmap_item() 1615 ksm_scan.rmap_list = &slot->rmap_list; scan_get_next_rmap_item() 1623 vma = find_vma(mm, ksm_scan.address); scan_get_next_rmap_item() 1628 if (ksm_scan.address < vma->vm_start) scan_get_next_rmap_item() 1629 ksm_scan.address = vma->vm_start; scan_get_next_rmap_item() 1631 ksm_scan.address = vma->vm_end; scan_get_next_rmap_item() 1633 while (ksm_scan.address < vma->vm_end) { scan_get_next_rmap_item() 1636 *page = follow_page(vma, ksm_scan.address, FOLL_GET); scan_get_next_rmap_item() 1638 ksm_scan.address += PAGE_SIZE; scan_get_next_rmap_item() 1644 flush_anon_page(vma, *page, ksm_scan.address); scan_get_next_rmap_item() 1647 ksm_scan.rmap_list, ksm_scan.address); scan_get_next_rmap_item() 1649 ksm_scan.rmap_list = scan_get_next_rmap_item() 1651 ksm_scan.address += PAGE_SIZE; scan_get_next_rmap_item() 1658 ksm_scan.address += PAGE_SIZE; scan_get_next_rmap_item() 1664 ksm_scan.address = 0; scan_get_next_rmap_item() 1665 ksm_scan.rmap_list = &slot->rmap_list; scan_get_next_rmap_item() 1671 remove_trailing_rmap_items(slot, ksm_scan.rmap_list); scan_get_next_rmap_item() 1674 ksm_scan.mm_slot = list_entry(slot->mm_list.next, scan_get_next_rmap_item() 1676 if (ksm_scan.address == 0) { scan_get_next_rmap_item() 1700 slot = ksm_scan.mm_slot; scan_get_next_rmap_item() 1704 ksm_scan.seqnr++; scan_get_next_rmap_item() 1831 list_add_tail(&mm_slot->mm_list, &ksm_scan.mm_slot->mm_list); __ksm_enter() 1859 if (mm_slot && ksm_scan.mm_slot != mm_slot) { __ksm_exit() 1866 &ksm_scan.mm_slot->mm_list); __ksm_exit() 2298 return sprintf(buf, "%lu\n", ksm_scan.seqnr); full_scans_show()
|
Completed in 82 milliseconds