Lines Matching refs:args
536 int migrate_vma_setup(struct migrate_vma *args) in migrate_vma_setup() argument
538 long nr_pages = (args->end - args->start) >> PAGE_SHIFT; in migrate_vma_setup()
540 args->start &= PAGE_MASK; in migrate_vma_setup()
541 args->end &= PAGE_MASK; in migrate_vma_setup()
542 if (!args->vma || is_vm_hugetlb_page(args->vma) || in migrate_vma_setup()
543 (args->vma->vm_flags & VM_SPECIAL) || vma_is_dax(args->vma)) in migrate_vma_setup()
547 if (args->start < args->vma->vm_start || in migrate_vma_setup()
548 args->start >= args->vma->vm_end) in migrate_vma_setup()
550 if (args->end <= args->vma->vm_start || args->end > args->vma->vm_end) in migrate_vma_setup()
552 if (!args->src || !args->dst) in migrate_vma_setup()
554 if (args->fault_page && !is_device_private_page(args->fault_page)) in migrate_vma_setup()
556 if (args->fault_page && !PageLocked(args->fault_page)) in migrate_vma_setup()
559 memset(args->src, 0, sizeof(*args->src) * nr_pages); in migrate_vma_setup()
560 args->cpages = 0; in migrate_vma_setup()
561 args->npages = 0; in migrate_vma_setup()
563 migrate_vma_collect(args); in migrate_vma_setup()
565 if (args->cpages) in migrate_vma_setup()
566 migrate_vma_unmap(args); in migrate_vma_setup()