mm/gup: remove pin_user_pages_fast_only()
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 24 Jan 2023 20:34:31 +0000 (16:34 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 10 Feb 2023 00:51:45 +0000 (16:51 -0800)
Commit ed29c2691188 ("drm/i915: Fix userptr so we do not have to worry
about obj->mm.lock, v7.") removed the only caller, remove this dead code
too.

Link: https://lkml.kernel.org/r/10-v2-987e91b59705+36b-gup_tidy_jgg@nvidia.com
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Acked-by: Mike Rapoport (IBM) <rppt@kernel.org>
Reviewed-by: John Hubbard <jhubbard@nvidia.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Claudio Imbrenda <imbrenda@linux.ibm.com>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/mm.h
mm/gup.c

index afefc16..a0d5964 100644 (file)
@@ -2261,8 +2261,6 @@ extern int mprotect_fixup(struct vma_iterator *vmi, struct mmu_gather *tlb,
  */
 int get_user_pages_fast_only(unsigned long start, int nr_pages,
                             unsigned int gup_flags, struct page **pages);
-int pin_user_pages_fast_only(unsigned long start, int nr_pages,
-                            unsigned int gup_flags, struct page **pages);
 
 static inline bool get_user_page_fast_only(unsigned long addr,
                        unsigned int gup_flags, struct page **pagep)
index 4ce88e0..91c8ab5 100644 (file)
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -3102,39 +3102,6 @@ int pin_user_pages_fast(unsigned long start, int nr_pages,
 }
 EXPORT_SYMBOL_GPL(pin_user_pages_fast);
 
-/*
- * This is the FOLL_PIN equivalent of get_user_pages_fast_only(). Behavior
- * is the same, except that this one sets FOLL_PIN instead of FOLL_GET.
- *
- * The API rules are the same, too: no negative values may be returned.
- */
-int pin_user_pages_fast_only(unsigned long start, int nr_pages,
-                            unsigned int gup_flags, struct page **pages)
-{
-       int nr_pinned;
-
-       /*
-        * FOLL_FAST_ONLY is required in order to match the API description of
-        * this routine: no fall back to regular ("slow") GUP.
-        */
-       if (!is_valid_gup_args(pages, NULL, NULL, &gup_flags,
-                              FOLL_PIN | FOLL_FAST_ONLY))
-               return 0;
-
-       nr_pinned = internal_get_user_pages_fast(start, nr_pages, gup_flags,
-                                                pages);
-       /*
-        * This routine is not allowed to return negative values. However,
-        * internal_get_user_pages_fast() *can* return -errno. Therefore,
-        * correct for that here:
-        */
-       if (nr_pinned < 0)
-               nr_pinned = 0;
-
-       return nr_pinned;
-}
-EXPORT_SYMBOL_GPL(pin_user_pages_fast_only);
-
 /**
  * pin_user_pages_remote() - pin pages of a remote process
  *