Lines Matching defs:args
452 * @args: contains the vma, start, and pfns arrays for the migration
514 int migrate_vma_setup(struct migrate_vma *args)
516 long nr_pages = (args->end - args->start) >> PAGE_SHIFT;
518 args->start &= PAGE_MASK;
519 args->end &= PAGE_MASK;
520 if (!args->vma || is_vm_hugetlb_page(args->vma) ||
521 (args->vma->vm_flags & VM_SPECIAL) || vma_is_dax(args->vma))
525 if (args->start < args->vma->vm_start ||
526 args->start >= args->vma->vm_end)
528 if (args->end <= args->vma->vm_start || args->end > args->vma->vm_end)
530 if (!args->src || !args->dst)
532 if (args->fault_page && !is_device_private_page(args->fault_page))
535 memset(args->src, 0, sizeof(*args->src) * nr_pages);
536 args->cpages = 0;
537 args->npages = 0;
539 migrate_vma_collect(args);
541 if (args->cpages)
542 migrate_vma_unmap(args);
940 * page as migrate_vma_setup() will fail if args.vma == NULL.