Thread (20 messages) 20 messages, 3 authors, 2013-08-22

Re: [patch 4/9] mm + fs: prepare for non-page entries in page cache radix trees

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2013-08-20 20:59:10
Also in: linux-fsdevel, lkml

On Sat, 17 Aug 2013 15:31:18 -0400 Johannes Weiner [off-list ref] wrote:
quoted hunk ↗ jump to hunk
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, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help