Message ID | 20180117202203.19756-30-willy@infradead.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/mm/filemap.c b/mm/filemap.c index 2536fcacb5bc..cd01f353cf6a 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -461,18 +461,11 @@ bool filemap_range_has_page(struct address_space *mapping, { pgoff_t index = start_byte >> PAGE_SHIFT; pgoff_t end = end_byte >> PAGE_SHIFT; - struct page *page; if (end_byte < start_byte) return false; - if (mapping->nrpages == 0) - return false; - - if (!find_get_pages_range(mapping, &index, end, 1, &page)) - return false; - put_page(page); - return true; + return xa_find(&mapping->pages, &index, end, XA_PRESENT); } EXPORT_SYMBOL(filemap_range_has_page);