Home
last modified time | relevance | path

Searched refs:uffdio_move (Results 1 – 3 of 3) sorted by relevance

/linux/tools/testing/selftests/mm/
H A Duffd-common.c666 struct uffdio_move uffdio_move; in move_page() local
670 uffdio_move.dst = (unsigned long) gopts->area_dst + offset; in move_page()
671 uffdio_move.src = (unsigned long) gopts->area_src + offset; in move_page()
672 uffdio_move.len = len; in move_page()
673 uffdio_move.mode = UFFDIO_MOVE_MODE_ALLOW_SRC_HOLES; in move_page()
674 uffdio_move.move = 0; in move_page()
675 if (ioctl(gopts->uffd, UFFDIO_MOVE, &uffdio_move)) { in move_page()
677 if (uffdio_move.move != -EEXIST) in move_page()
679 (int64_t)uffdio_move.move); in move_page()
680 wake_range(gopts->uffd, uffdio_move.dst, len); in move_page()
[all …]
/linux/fs/
H A Duserfaultfd.c1906 struct uffdio_move uffdio_move; in userfaultfd_move() local
1907 struct uffdio_move __user *user_uffdio_move; in userfaultfd_move()
1911 user_uffdio_move = (struct uffdio_move __user *) arg; in userfaultfd_move()
1920 if (copy_from_user(&uffdio_move, user_uffdio_move, in userfaultfd_move()
1922 sizeof(uffdio_move)-sizeof(__s64))) in userfaultfd_move()
1929 ret = validate_range(mm, uffdio_move.dst, uffdio_move.len); in userfaultfd_move()
1933 ret = validate_range(mm, uffdio_move.src, uffdio_move.len); in userfaultfd_move()
1937 if (uffdio_move.mode & ~(UFFDIO_MOVE_MODE_ALLOW_SRC_HOLES| in userfaultfd_move()
1942 ret = move_pages(ctx, uffdio_move.dst, uffdio_move.src, in userfaultfd_move()
1943 uffdio_move.len, uffdio_move.mode); in userfaultfd_move()
[all …]
/linux/include/uapi/linux/
H A Duserfaultfd.h99 struct uffdio_move)
359 struct uffdio_move { struct