Lines Matching refs:uffdio_copy
478 static void retry_copy_page(int ufd, struct uffdio_copy *uffdio_copy,
481 uffd_test_ops->alias_mapping(&uffdio_copy->dst,
482 uffdio_copy->len,
484 if (ioctl(ufd, UFFDIO_COPY, uffdio_copy)) {
486 if (uffdio_copy->copy != -EEXIST) {
488 uffdio_copy->copy);
493 uffdio_copy->copy); exit(1);
499 struct uffdio_copy uffdio_copy;
505 uffdio_copy.dst = (unsigned long) area_dst + offset;
506 uffdio_copy.src = (unsigned long) area_src + offset;
507 uffdio_copy.len = page_size;
509 uffdio_copy.mode = UFFDIO_COPY_MODE_WP;
511 uffdio_copy.mode = 0;
512 uffdio_copy.copy = 0;
513 if (ioctl(ufd, UFFDIO_COPY, &uffdio_copy)) {
515 if (uffdio_copy.copy != -EEXIST) {
517 uffdio_copy.copy);
520 } else if (uffdio_copy.copy != page_size) {
522 uffdio_copy.copy); exit(1);
526 retry_copy_page(ufd, &uffdio_copy, offset);