Lines Matching defs:args

573 static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,
577 const unsigned long *src = args->src;
578 unsigned long *dst = args->dst;
581 for (addr = args->start; addr < args->end; addr += PAGE_SIZE,
617 (!spage && args->vma->vm_flags & VM_WRITE))
622 static int dmirror_migrate_finalize_and_map(struct migrate_vma *args,
625 unsigned long start = args->start;
626 unsigned long end = args->end;
627 const unsigned long *src = args->src;
628 const unsigned long *dst = args->dst;
674 struct migrate_vma args = { 0 };
699 args.vma = vma;
700 args.src = src_pfns;
701 args.dst = dst_pfns;
702 args.start = addr;
703 args.end = next;
704 args.pgmap_owner = dmirror->mdevice;
705 args.flags = MIGRATE_VMA_SELECT_SYSTEM;
706 ret = migrate_vma_setup(&args);
710 dmirror_migrate_alloc_and_copy(&args, dmirror);
711 migrate_vma_pages(&args);
712 dmirror_migrate_finalize_and_map(&args, dmirror);
713 migrate_vma_finalize(&args);
1017 static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args,
1020 const unsigned long *src = args->src;
1021 unsigned long *dst = args->dst;
1022 unsigned long start = args->start;
1023 unsigned long end = args->end;
1035 dpage = alloc_page_vma(GFP_HIGHUSER_MOVABLE, args->vma, addr);
1051 struct migrate_vma args = { 0 };
1067 args.vma = vmf->vma;
1068 args.start = vmf->address;
1069 args.end = args.start + PAGE_SIZE;
1070 args.src = &src_pfns;
1071 args.dst = &dst_pfns;
1072 args.pgmap_owner = dmirror->mdevice;
1073 args.flags = MIGRATE_VMA_SELECT_DEVICE_PRIVATE;
1074 args.fault_page = vmf->page;
1076 if (migrate_vma_setup(&args))
1079 ret = dmirror_devmem_fault_alloc_and_copy(&args, dmirror);
1082 migrate_vma_pages(&args);
1088 migrate_vma_finalize(&args);