i915: use find_lock_page instead of find_lock_entry
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 13 Oct 2020 23:51:31 +0000 (16:51 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Oct 2020 01:38:29 +0000 (18:38 -0700)
i915 does not want to see value entries.  Switch it to use
find_lock_page() instead, and remove the export of find_lock_entry().
Move find_lock_entry() and find_get_entry() to mm/internal.h to discourage
any future use.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Huang Ying <ying.huang@intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: William Kucharski <william.kucharski@oracle.com>
Link: https://lkml.kernel.org/r/20200910183318.20139-6-willy@infradead.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/gpu/drm/i915/gem/i915_gem_shmem.c
include/linux/pagemap.h
mm/filemap.c
mm/internal.h

index 38113d3..75e8b71 100644 (file)
@@ -258,8 +258,8 @@ shmem_writeback(struct drm_i915_gem_object *obj)
        for (i = 0; i < obj->base.size >> PAGE_SHIFT; i++) {
                struct page *page;
 
-               page = find_lock_entry(mapping, i);
-               if (!page || xa_is_value(page))
+               page = find_lock_page(mapping, i);
+               if (!page)
                        continue;
 
                if (!page_mapped(page) && clear_page_dirty_for_io(page)) {
index 434c9c3..9d282fe 100644 (file)
@@ -385,8 +385,6 @@ static inline struct page *find_subpage(struct page *head, pgoff_t index)
        return head + (index & (thp_nr_pages(head) - 1));
 }
 
-struct page *find_get_entry(struct address_space *mapping, pgoff_t offset);
-struct page *find_lock_entry(struct address_space *mapping, pgoff_t offset);
 unsigned find_get_entries(struct address_space *mapping, pgoff_t start,
                          unsigned int nr_entries, struct page **entries,
                          pgoff_t *indices);
index 748b7b1..089a2f0 100644 (file)
@@ -1726,7 +1726,6 @@ repeat:
        }
        return page;
 }
-EXPORT_SYMBOL(find_lock_entry);
 
 /**
  * pagecache_get_page - Find and get a reference to a page.
index 10c6776..a801a4d 100644 (file)
@@ -65,6 +65,9 @@ static inline void ra_submit(struct file_ra_state *ra,
                        ra->start, ra->size, ra->async_size);
 }
 
+struct page *find_get_entry(struct address_space *mapping, pgoff_t index);
+struct page *find_lock_entry(struct address_space *mapping, pgoff_t index);
+
 /**
  * page_evictable - test whether a page is evictable
  * @page: the page to test