Lines Matching refs:khugepaged_scan

115  * struct khugepaged_scan - cursor for scanning
120 * There is only the one khugepaged_scan instance of this cursor structure.
122 struct khugepaged_scan {
128 static struct khugepaged_scan khugepaged_scan = {
129 .mm_head = LIST_HEAD_INIT(khugepaged_scan.mm_head),
435 wakeup = list_empty(&khugepaged_scan.mm_head);
436 list_add_tail(&slot->mm_node, &khugepaged_scan.mm_head);
463 if (mm_slot && khugepaged_scan.mm_slot != mm_slot) {
2338 if (khugepaged_scan.mm_slot) {
2339 mm_slot = khugepaged_scan.mm_slot;
2342 slot = list_entry(khugepaged_scan.mm_head.next,
2345 khugepaged_scan.address = 0;
2346 khugepaged_scan.mm_slot = mm_slot;
2363 vma_iter_init(&vmi, mm, khugepaged_scan.address);
2379 if (khugepaged_scan.address > hend)
2381 if (khugepaged_scan.address < hstart)
2382 khugepaged_scan.address = hstart;
2383 VM_BUG_ON(khugepaged_scan.address & ~HPAGE_PMD_MASK);
2385 while (khugepaged_scan.address < hend) {
2392 VM_BUG_ON(khugepaged_scan.address < hstart ||
2393 khugepaged_scan.address + HPAGE_PMD_SIZE >
2398 khugepaged_scan.address);
2403 khugepaged_scan.address, file, pgoff, cc);
2410 khugepaged_scan.address, false);
2417 khugepaged_scan.address, &mmap_locked, cc);
2424 khugepaged_scan.address += HPAGE_PMD_SIZE;
2444 VM_BUG_ON(khugepaged_scan.mm_slot != mm_slot);
2455 if (slot->mm_node.next != &khugepaged_scan.mm_head) {
2458 khugepaged_scan.mm_slot =
2460 khugepaged_scan.address = 0;
2462 khugepaged_scan.mm_slot = NULL;
2474 return !list_empty(&khugepaged_scan.mm_head) &&
2480 return !list_empty(&khugepaged_scan.mm_head) ||
2500 if (!khugepaged_scan.mm_slot)
2565 mm_slot = khugepaged_scan.mm_slot;
2566 khugepaged_scan.mm_slot = NULL;
2640 if (!list_empty(&khugepaged_scan.mm_head))