Lines Matching refs:start

970  * @start:	starting user address
971 * @nr_pages: number of pages from start to pin
1028 unsigned long start, unsigned long nr_pages,
1039 start = untagged_addr(start);
1057 if (!vma || start >= vma->vm_end) {
1058 vma = find_extend_vma(mm, start);
1059 if (!vma && in_gate_area(mm, start)) {
1060 ret = get_gate_page(mm, start & PAGE_MASK,
1075 &start, &nr_pages, i,
1101 page = follow_page_mask(vma, start, foll_flags, &ctx);
1103 ret = faultin_page(vma, start, &foll_flags, locked);
1130 flush_anon_page(vma, page, start);
1139 page_increm = 1 + (~(start >> PAGE_SHIFT) & ctx.page_mask);
1143 start += page_increm * PAGE_SIZE;
1254 unsigned long start,
1289 ret = __get_user_pages(mm, start, nr_pages, flags, pages,
1322 start += ret << PAGE_SHIFT;
1331 * start trying again otherwise it can loop forever.
1349 ret = __get_user_pages(mm, start, 1, flags | FOLL_TRIED,
1368 start += PAGE_SIZE;
1384 * @start: start address
1402 unsigned long start, unsigned long end, int *locked)
1405 unsigned long nr_pages = (end - start) / PAGE_SIZE;
1408 VM_BUG_ON(start & ~PAGE_MASK);
1410 VM_BUG_ON_VMA(start < vma->vm_start, vma);
1436 return __get_user_pages(mm, start, nr_pages, gup_flags,
1447 int __mm_populate(unsigned long start, unsigned long len, int ignore_errors)
1455 end = start + len;
1457 for (nstart = start; nstart < end; nstart = nend) {
1500 static long __get_user_pages_locked(struct mm_struct *mm, unsigned long start,
1518 vma = find_vma(mm, start);
1528 pages[i] = virt_to_page(start);
1534 start = (start + PAGE_SIZE) & PAGE_MASK;
1598 unsigned long start,
1678 ret = __get_user_pages_locked(mm, start, nr_pages, pages, vmas,
1693 unsigned long start,
1708 unsigned long start,
1732 rc = __get_user_pages_locked(mm, start, nr_pages, pages,
1749 rc = check_and_migrate_cma_pages(mm, start, rc, pages,
1761 unsigned long start,
1767 return __get_user_pages_locked(mm, start, nr_pages, pages, vmas,
1793 unsigned long start, unsigned long nr_pages,
1811 return __gup_longterm_locked(mm, start, nr_pages, pages,
1816 return __get_user_pages_locked(mm, start, nr_pages, pages, vmas,
1824 * @start: starting user address
1825 * @nr_pages: number of pages from start to pin
1882 unsigned long start, unsigned long nr_pages,
1889 return __get_user_pages_remote(mm, start, nr_pages, gup_flags,
1896 unsigned long start, unsigned long nr_pages,
1904 unsigned long start, unsigned long nr_pages,
1914 * @start: starting user address
1915 * @nr_pages: number of pages from start to pin
1928 long get_user_pages(unsigned long start, unsigned long nr_pages,
1935 return __gup_longterm_locked(current->mm, start, nr_pages,
1957 * @start: starting user address
1958 * @nr_pages: number of pages from start to pin
1972 long get_user_pages_locked(unsigned long start, unsigned long nr_pages,
1991 return __get_user_pages_locked(current->mm, start, nr_pages,
2012 long get_user_pages_unlocked(unsigned long start, unsigned long nr_pages,
2029 ret = __get_user_pages_locked(mm, start, nr_pages, pages, NULL,
2656 static bool gup_fast_permitted(unsigned long start, unsigned long end)
2662 static int __gup_longterm_unlocked(unsigned long start, int nr_pages,
2674 start, nr_pages,
2678 ret = get_user_pages_unlocked(start, nr_pages,
2685 static unsigned long lockless_pages_from_mm(unsigned long start,
2695 !gup_fast_permitted(start, end))
2716 gup_pgd_range(start, end, gup_flags, pages, &nr_pinned);
2732 static int internal_get_user_pages_fast(unsigned long start,
2752 start = untagged_addr(start) & PAGE_MASK;
2754 if (check_add_overflow(start, len, &end))
2756 if (unlikely(!access_ok((void __user *)start, len)))
2759 nr_pinned = lockless_pages_from_mm(start, end, gup_flags, pages);
2764 start += nr_pinned << PAGE_SHIFT;
2766 ret = __gup_longterm_unlocked(start, nr_pages - nr_pinned, gup_flags,
2782 * @start: starting user address
2783 * @nr_pages: number of pages from start to pin
2800 int get_user_pages_fast_only(unsigned long start, int nr_pages,
2813 nr_pinned = internal_get_user_pages_fast(start, nr_pages, gup_flags,
2831 * @start: starting user address
2832 * @nr_pages: number of pages from start to pin
2845 int get_user_pages_fast(unsigned long start, int nr_pages,
2858 return internal_get_user_pages_fast(start, nr_pages, gup_flags, pages);
2865 * @start: starting user address
2866 * @nr_pages: number of pages from start to pin
2878 int pin_user_pages_fast(unsigned long start, int nr_pages,
2886 return internal_get_user_pages_fast(start, nr_pages, gup_flags, pages);
2896 int pin_user_pages_fast_only(unsigned long start, int nr_pages,
2912 nr_pinned = internal_get_user_pages_fast(start, nr_pages, gup_flags,
2930 * @start: starting user address
2931 * @nr_pages: number of pages from start to pin
2950 unsigned long start, unsigned long nr_pages,
2959 return __get_user_pages_remote(mm, start, nr_pages, gup_flags,
2967 * @start: starting user address
2968 * @nr_pages: number of pages from start to pin
2982 long pin_user_pages(unsigned long start, unsigned long nr_pages,
2991 return __gup_longterm_locked(current->mm, start, nr_pages,
3001 long pin_user_pages_unlocked(unsigned long start, unsigned long nr_pages,
3009 return get_user_pages_unlocked(start, nr_pages, pages, gup_flags);
3018 long pin_user_pages_locked(unsigned long start, unsigned long nr_pages,
3036 return __get_user_pages_locked(current->mm, start, nr_pages,