diff options
author | Mark Fasheh <mark.fasheh@oracle.com> | 2007-09-07 14:20:45 -0700 |
---|---|---|
committer | Mark Fasheh <mark.fasheh@oracle.com> | 2007-10-12 11:54:35 -0700 |
commit | 1d410a6e337a0d2d5543ad1d9bccb670a7a05312 (patch) | |
tree | 696f70750482a4a49b61c79e6499659ddb3635b4 /fs/ocfs2/aops.h | |
parent | 65ed39d6ca78f07d2958814e08440e4264b6b488 (diff) | |
download | talos-obmc-linux-1d410a6e337a0d2d5543ad1d9bccb670a7a05312.tar.gz talos-obmc-linux-1d410a6e337a0d2d5543ad1d9bccb670a7a05312.zip |
ocfs2: Small refactor of truncate zeroing code
We'll want to reuse most of this when pushing inline data back out to an
extent. Keeping this part as a seperate patch helps to keep the upcoming
changes for write support uncluttered.
The core portion of ocfs2_zero_cluster_pages() responsible for making sure a
page is mapped and properly dirtied is abstracted out into it's own
function, ocfs2_map_and_dirty_page(). Actual functionality doesn't change,
though zeroing becomes optional.
We also turn part of ocfs2_free_write_ctxt() into a common function for
unlocking and freeing a page array. This operation is very common (and
uniform) for Ocfs2 cluster sizes greater than page size, so it makes sense
to keep the code in one place.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Reviewed-by: Joel Becker <joel.becker@oracle.com>
Diffstat (limited to 'fs/ocfs2/aops.h')
-rw-r--r-- | fs/ocfs2/aops.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ocfs2/aops.h b/fs/ocfs2/aops.h index 389579bd64e3..b4fa37d40db4 100644 --- a/fs/ocfs2/aops.h +++ b/fs/ocfs2/aops.h @@ -34,6 +34,8 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno, struct inode *inode, unsigned int from, unsigned int to, int new); +void ocfs2_unlock_and_free_pages(struct page **pages, int num_pages); + int walk_page_buffers( handle_t *handle, struct buffer_head *head, unsigned from, |