Re: [RFC 4/8] Enhance fallback functions in libs to support higherorder pages

From: Dave Kleikamp
Date: Fri Apr 20 2007 - 15:28:08 EST


On Fri, 2007-04-20 at 12:10 -0700, Christoph Lameter wrote:
> On Fri, 20 Apr 2007, Dave Kleikamp wrote:
> > Yeah. I'm working on patches for storing file tails in buffers
> > allocated from the slab cache, and the tail will be represented by a
> > fake struct page. (This is primarily for kernels with a larger page
> > size). So my version of page_cache_size(page) may return a different
> > size for different pages belonging to the same mapping. I'm in the
> > midst of cleaning up the patches and plan to post them to linux-mm by
> > Monday.
>
> I am not sure what the point of that patchset would be in this context
> given that this is about support for arbitrary page sizes. If the
> filesystem wants it then it can reduce the page size for small files.
>
> Different page sizes for one mapping may introduce high complexity into a
> filesystem.

I'm trying to keep it from getting too complicated.

> And we can already represent different page size. We have compound pages
> support in the kernel.

There are advantages to having a larger base page size, such as
increased TLB reach. I'm specifically targetting kernels built with
CONFIG_PPC_64K_PAGES, but other architectures could benefit.

> page_cache_size(page) in terms of current code in mm is
>
> PAGE_SIZE << compound_order(page)

I don't see page_cache_size() in linux-2.6.21-rc6-mm1. Is there
something newer?

Anyway, my patches are at a proof-of-concept stage. I look forward to
more discussion when I post the patch set.

Thanks,
Shaggy
--
David Kleikamp
IBM Linux Technology Center

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