Lines Matching refs:args

640 static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,  in dmirror_migrate_alloc_and_copy()  argument
644 const unsigned long *src = args->src; in dmirror_migrate_alloc_and_copy()
645 unsigned long *dst = args->dst; in dmirror_migrate_alloc_and_copy()
648 for (addr = args->start; addr < args->end; addr += PAGE_SIZE, in dmirror_migrate_alloc_and_copy()
689 (!spage && args->vma->vm_flags & VM_WRITE)) in dmirror_migrate_alloc_and_copy()
729 static int dmirror_migrate_finalize_and_map(struct migrate_vma *args, in dmirror_migrate_finalize_and_map() argument
732 unsigned long start = args->start; in dmirror_migrate_finalize_and_map()
733 unsigned long end = args->end; in dmirror_migrate_finalize_and_map()
734 const unsigned long *src = args->src; in dmirror_migrate_finalize_and_map()
735 const unsigned long *dst = args->dst; in dmirror_migrate_finalize_and_map()
824 static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args, in dmirror_devmem_fault_alloc_and_copy() argument
827 const unsigned long *src = args->src; in dmirror_devmem_fault_alloc_and_copy()
828 unsigned long *dst = args->dst; in dmirror_devmem_fault_alloc_and_copy()
829 unsigned long start = args->start; in dmirror_devmem_fault_alloc_and_copy()
830 unsigned long end = args->end; in dmirror_devmem_fault_alloc_and_copy()
845 dpage = alloc_page_vma(GFP_HIGHUSER_MOVABLE, args->vma, addr); in dmirror_devmem_fault_alloc_and_copy()
884 struct migrate_vma args = { 0 }; in dmirror_migrate_to_system() local
909 args.vma = vma; in dmirror_migrate_to_system()
910 args.src = src_pfns; in dmirror_migrate_to_system()
911 args.dst = dst_pfns; in dmirror_migrate_to_system()
912 args.start = addr; in dmirror_migrate_to_system()
913 args.end = next; in dmirror_migrate_to_system()
914 args.pgmap_owner = dmirror->mdevice; in dmirror_migrate_to_system()
915 args.flags = dmirror_select_device(dmirror); in dmirror_migrate_to_system()
917 ret = migrate_vma_setup(&args); in dmirror_migrate_to_system()
922 dmirror_devmem_fault_alloc_and_copy(&args, dmirror); in dmirror_migrate_to_system()
924 migrate_vma_pages(&args); in dmirror_migrate_to_system()
925 cmd->cpages += dmirror_successful_migrated_pages(&args); in dmirror_migrate_to_system()
926 migrate_vma_finalize(&args); in dmirror_migrate_to_system()
945 struct migrate_vma args = { 0 }; in dmirror_migrate_to_device() local
969 args.vma = vma; in dmirror_migrate_to_device()
970 args.src = src_pfns; in dmirror_migrate_to_device()
971 args.dst = dst_pfns; in dmirror_migrate_to_device()
972 args.start = addr; in dmirror_migrate_to_device()
973 args.end = next; in dmirror_migrate_to_device()
974 args.pgmap_owner = dmirror->mdevice; in dmirror_migrate_to_device()
975 args.flags = MIGRATE_VMA_SELECT_SYSTEM; in dmirror_migrate_to_device()
976 ret = migrate_vma_setup(&args); in dmirror_migrate_to_device()
981 dmirror_migrate_alloc_and_copy(&args, dmirror); in dmirror_migrate_to_device()
982 migrate_vma_pages(&args); in dmirror_migrate_to_device()
983 dmirror_migrate_finalize_and_map(&args, dmirror); in dmirror_migrate_to_device()
984 migrate_vma_finalize(&args); in dmirror_migrate_to_device()
1399 struct migrate_vma args = { 0 }; in dmirror_devmem_fault() local
1415 args.vma = vmf->vma; in dmirror_devmem_fault()
1416 args.start = vmf->address; in dmirror_devmem_fault()
1417 args.end = args.start + PAGE_SIZE; in dmirror_devmem_fault()
1418 args.src = &src_pfns; in dmirror_devmem_fault()
1419 args.dst = &dst_pfns; in dmirror_devmem_fault()
1420 args.pgmap_owner = dmirror->mdevice; in dmirror_devmem_fault()
1421 args.flags = dmirror_select_device(dmirror); in dmirror_devmem_fault()
1422 args.fault_page = vmf->page; in dmirror_devmem_fault()
1424 if (migrate_vma_setup(&args)) in dmirror_devmem_fault()
1427 ret = dmirror_devmem_fault_alloc_and_copy(&args, dmirror); in dmirror_devmem_fault()
1430 migrate_vma_pages(&args); in dmirror_devmem_fault()
1436 migrate_vma_finalize(&args); in dmirror_devmem_fault()