Lines Matching refs:khugepaged_scan
112 struct khugepaged_scan { struct
118 static struct khugepaged_scan khugepaged_scan = { variable
119 .mm_head = LIST_HEAD_INIT(khugepaged_scan.mm_head),
496 wakeup = list_empty(&khugepaged_scan.mm_head); in __khugepaged_enter()
497 list_add_tail(&mm_slot->mm_node, &khugepaged_scan.mm_head); in __khugepaged_enter()
534 if (mm_slot && khugepaged_scan.mm_slot != mm_slot) { in __khugepaged_exit()
2135 if (khugepaged_scan.mm_slot) in khugepaged_scan_mm_slot()
2136 mm_slot = khugepaged_scan.mm_slot; in khugepaged_scan_mm_slot()
2138 mm_slot = list_entry(khugepaged_scan.mm_head.next, in khugepaged_scan_mm_slot()
2140 khugepaged_scan.address = 0; in khugepaged_scan_mm_slot()
2141 khugepaged_scan.mm_slot = mm_slot; in khugepaged_scan_mm_slot()
2155 vma = find_vma(mm, khugepaged_scan.address); in khugepaged_scan_mm_slot()
2175 if (khugepaged_scan.address > hend) in khugepaged_scan_mm_slot()
2177 if (khugepaged_scan.address < hstart) in khugepaged_scan_mm_slot()
2178 khugepaged_scan.address = hstart; in khugepaged_scan_mm_slot()
2179 VM_BUG_ON(khugepaged_scan.address & ~HPAGE_PMD_MASK); in khugepaged_scan_mm_slot()
2183 while (khugepaged_scan.address < hend) { in khugepaged_scan_mm_slot()
2189 VM_BUG_ON(khugepaged_scan.address < hstart || in khugepaged_scan_mm_slot()
2190 khugepaged_scan.address + HPAGE_PMD_SIZE > in khugepaged_scan_mm_slot()
2195 khugepaged_scan.address); in khugepaged_scan_mm_slot()
2203 khugepaged_scan.address, in khugepaged_scan_mm_slot()
2207 khugepaged_scan.address += HPAGE_PMD_SIZE; in khugepaged_scan_mm_slot()
2221 VM_BUG_ON(khugepaged_scan.mm_slot != mm_slot); in khugepaged_scan_mm_slot()
2232 if (mm_slot->mm_node.next != &khugepaged_scan.mm_head) { in khugepaged_scan_mm_slot()
2233 khugepaged_scan.mm_slot = list_entry( in khugepaged_scan_mm_slot()
2236 khugepaged_scan.address = 0; in khugepaged_scan_mm_slot()
2238 khugepaged_scan.mm_slot = NULL; in khugepaged_scan_mm_slot()
2250 return !list_empty(&khugepaged_scan.mm_head) && in khugepaged_has_work()
2256 return !list_empty(&khugepaged_scan.mm_head) || in khugepaged_wait_event()
2281 if (!khugepaged_scan.mm_slot) in khugepaged_do_scan()
2335 mm_slot = khugepaged_scan.mm_slot; in khugepaged()
2336 khugepaged_scan.mm_slot = NULL; in khugepaged()
2403 if (!list_empty(&khugepaged_scan.mm_head)) in start_stop_khugepaged()