On Wed, Nov 14, 2007 at 03:57:46PM +0000, David Howells wrote: > Nick Piggin <npiggin@xxxxxxx> wrote: > > > In core code, the PAGE_CACHE_SIZE is for page cache struct pages. Single > > struct pages (not page arrays). Take a look at generic mapping read or > > something. > > So you're saying a struct page controls an area of PAGE_CACHE_SIZE, not an > area of PAGE_SIZE? No, a pagecache page is PAGE_CACHE_SIZE. And not all struct pages control the same amount of data anyway, with compound pages. > Is a struct page then a purely pagecache concept? > > > Documentation is the opposite of convention ;) > > If it's not Documented, then it's irrelevant. But you can't just decide yourself that it is irrelevant because you don't grep hard enough ;) include/linux/mm.h: * A page may belong to an inode's memory mapping. In this case, page->mapping * is the pointer to the inode, and page->index is the file offset of the page, * in units of PAGE_CACHE_SIZE. include/linux/mm_types.h unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE units, *not* PAGE_CACHE_SIZE */ Looks like documentation to me. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html