[PATCH] add page->mapping handling interface [0/35] intro

From: KAMEZAWA Hiroyuki
Date: Mon Sep 10 2007 - 05:39:19 EST


Hi, this patch set adds following functions

- page_inode(page) ... returns inode from page, (page->mapping->host)
- page_mapping_cache(page) ... returns addrees_space from page
- page_mapping_anon(page) ... return anon_vma from page
- page_is_pagecache(page) ... returns 1 if the page is page cache
- pagecache_consistent(page, mapping) ... returns if page_mapping_cache(page)
equals to mapping.

By adding aboves, this patch set removes all *direct* references to
page->mapping in usual codes. (compile tested with all mod config.)

I think this can improve VM/FS dependency and make things robust.
In addition, page->mapping is not a just address_space, now.
(And we can hide page->mapping details from moduled FSs.)

patch set is structured as
[1] ... new interface definition
[2] ... changes in /mm
[3] ... changes in /kernel and /fs
[4...] ... changes in each FSs. (most of patches are very small.)

Any comments are welcome.

Thanks,
-Kame

-
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/