lkml.org 
[lkml]   [2007]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC][PATCH] page->mapping clarification [1/3] base functions
On Fri, 21 Sep 2007 13:48:28 +0200
Peter Zijlstra <peterz@infradead.org> wrote:
> > Followings are moved
> > * page_mapping() ... returns swapper_space or address_space a page is on.
> > (from mm.h)
> > * page_index() ... returns position of a page in its inode
> > (from mm.h)
> > * remove_mapping() ... a safe routine to remove page->mapping from page.
> > (from swap.h)
>
> I have two other functions that might want integration with this scheme:
>
> page_file_mapping() ... returns backing address space
> page_file_index() ... returns the index therein
>
> They are identical to page_mapping_cache() and page_index() for
> page cache pages, but they also work on swap cache pages.
>
> That is, for swapcache pages they return:
>
> page_file_mapping:
> page_swap_info(page)->swap_file->f_mapping
>
> page_file_index:
> swp_offset((swp_offset_t)page_private(page))
>
> When a filesystem uses these functions instead of page->mapping and
> page->index, it allows passing swap cache pages into the regular
> filesystem read/write paths.
>
Oh,
> This is useful for things like swap over NFS, where swap is backed by a
> swapfile on a 'regular' filesystem.
>
Okay, I'll try to add them in the next set.

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

\
 
 \ /
  Last update: 2007-09-21 17:11    [W:0.077 / U:0.780 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site