On Sat, 17 Aug 2013 15:31:18 -0400 Johannes Weiner <han...@cmpxchg.org> wrote:

> shmem mappings already contain exceptional entries where swap slot
> information is remembered.
> 
> To be able to store eviction information for regular page cache,
> prepare every site dealing with the radix trees directly to handle
> entries other than pages.
> 
> The common lookup functions will filter out non-page entries and
> return NULL for page cache holes, just as before.  But provide a raw
> version of the API which returns non-page entries as well, and switch
> shmem over to use it.
> 
>
> ...
>
> -/**
> - * find_get_page - find and get a page reference
> - * @mapping: the address_space to search
> - * @offset: the page index
> - *
> - * Is there a pagecache struct page at the given (mapping, offset) tuple?
> - * If yes, increment its refcount and return it; if no, return NULL.
> - */
> -struct page *find_get_page(struct address_space *mapping, pgoff_t offset)
> +struct page *__find_get_page(struct address_space *mapping, pgoff_t offset)
>  {
>       void **pagep;
>       struct page *page;
> @@ -812,24 +828,31 @@ out:
>  
>       return page;
>  }
> -EXPORT_SYMBOL(find_get_page);
> +EXPORT_SYMBOL(__find_get_page);

Deleting the interface documentation for a global, exported-to-modules
function was a bit rude.

And it does need documentation, to tell people that it can return the
non-pages.

Does it have the same handling of non-pages as __find_get_pages()?  It
had better, given the naming!

>
> ...
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to