[16/41] Use page_cache_xxx in fs/ext3

2007-09-11 Thread Christoph Lameter
Use page_cache_xxx in fs/ext3

Signed-off-by: Christoph Lameter <[EMAIL PROTECTED]>
---
 fs/ext3/dir.c   |3 ++-
 fs/ext3/inode.c |   34 +-
 2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/fs/ext3/dir.c b/fs/ext3/dir.c
index c00723a..a65b5a7 100644
--- a/fs/ext3/dir.c
+++ b/fs/ext3/dir.c
@@ -137,7 +137,8 @@ static int ext3_readdir(struct file * filp,
_bh, 0, 0);
if (err > 0) {
pgoff_t index = map_bh.b_blocknr >>
-   (PAGE_CACHE_SHIFT - inode->i_blkbits);
+   (page_cache_shift(inode->i_mapping)
+   - inode->i_blkbits);
if (!ra_has_index(>f_ra, index))
page_cache_sync_readahead(
sb->s_bdev->bd_inode->i_mapping,
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
index eb3c264..986519b 100644
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -1224,7 +1224,7 @@ static int ext3_ordered_commit_write(struct file *file, 
struct page *page,
 */
loff_t new_i_size;
 
-   new_i_size = ((loff_t)page->index << PAGE_CACHE_SHIFT) + to;
+   new_i_size = page_cache_pos(page->mapping, page->index, to);
if (new_i_size > EXT3_I(inode)->i_disksize)
EXT3_I(inode)->i_disksize = new_i_size;
ret = generic_commit_write(file, page, from, to);
@@ -1243,7 +1243,7 @@ static int ext3_writeback_commit_write(struct file *file, 
struct page *page,
int ret = 0, ret2;
loff_t new_i_size;
 
-   new_i_size = ((loff_t)page->index << PAGE_CACHE_SHIFT) + to;
+   new_i_size = page_cache_pos(inode->i_mapping, page->index, to);
if (new_i_size > EXT3_I(inode)->i_disksize)
EXT3_I(inode)->i_disksize = new_i_size;
 
@@ -1270,7 +1270,7 @@ static int ext3_journalled_commit_write(struct file *file,
/*
 * Here we duplicate the generic_commit_write() functionality
 */
-   pos = ((loff_t)page->index << PAGE_CACHE_SHIFT) + to;
+   pos = page_cache_pos(page->mapping, page->index, to);
 
ret = walk_page_buffers(handle, page_buffers(page), from,
to, , commit_write_fn);
@@ -1422,6 +1422,7 @@ static int ext3_ordered_writepage(struct page *page,
handle_t *handle = NULL;
int ret = 0;
int err;
+   int pagesize = page_cache_size(inode->i_mapping);
 
J_ASSERT(PageLocked(page));
 
@@ -1444,8 +1445,7 @@ static int ext3_ordered_writepage(struct page *page,
(1 << BH_Dirty)|(1 << BH_Uptodate));
}
page_bufs = page_buffers(page);
-   walk_page_buffers(handle, page_bufs, 0,
-   PAGE_CACHE_SIZE, NULL, bget_one);
+   walk_page_buffers(handle, page_bufs, 0, pagesize, NULL, bget_one);
 
ret = block_write_full_page(page, ext3_get_block, wbc);
 
@@ -1462,13 +1462,12 @@ static int ext3_ordered_writepage(struct page *page,
 * and generally junk.
 */
if (ret == 0) {
-   err = walk_page_buffers(handle, page_bufs, 0, PAGE_CACHE_SIZE,
-   NULL, journal_dirty_data_fn);
+   err = walk_page_buffers(handle, page_bufs, 0, pagesize,
+   NULL, journal_dirty_data_fn);
if (!ret)
ret = err;
}
-   walk_page_buffers(handle, page_bufs, 0,
-   PAGE_CACHE_SIZE, NULL, bput_one);
+   walk_page_buffers(handle, page_bufs, 0, pagesize, NULL, bput_one);
err = ext3_journal_stop(handle);
if (!ret)
ret = err;
@@ -1520,6 +1519,7 @@ static int ext3_journalled_writepage(struct page *page,
handle_t *handle = NULL;
int ret = 0;
int err;
+   int pagesize = page_cache_size(inode->i_mapping);
 
if (ext3_journal_current_handle())
goto no_write;
@@ -1536,17 +1536,16 @@ static int ext3_journalled_writepage(struct page *page,
 * doesn't seem much point in redirtying the page here.
 */
ClearPageChecked(page);
-   ret = block_prepare_write(page, 0, PAGE_CACHE_SIZE,
-   ext3_get_block);
+   ret = block_prepare_write(page, 0, pagesize, ext3_get_block);
if (ret != 0) {
ext3_journal_stop(handle);
goto out_unlock;
}
ret = walk_page_buffers(handle, page_buffers(page), 0,
-   PAGE_CACHE_SIZE, NULL, do_journal_get_write_access);
+   pagesize, NULL, do_journal_get_write_access);
 
err = walk_page_buffers(handle, page_buffers(page), 0,
- 

[16/41] Use page_cache_xxx in fs/ext3

2007-09-11 Thread Christoph Lameter
Use page_cache_xxx in fs/ext3

Signed-off-by: Christoph Lameter [EMAIL PROTECTED]
---
 fs/ext3/dir.c   |3 ++-
 fs/ext3/inode.c |   34 +-
 2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/fs/ext3/dir.c b/fs/ext3/dir.c
index c00723a..a65b5a7 100644
--- a/fs/ext3/dir.c
+++ b/fs/ext3/dir.c
@@ -137,7 +137,8 @@ static int ext3_readdir(struct file * filp,
map_bh, 0, 0);
if (err  0) {
pgoff_t index = map_bh.b_blocknr 
-   (PAGE_CACHE_SHIFT - inode-i_blkbits);
+   (page_cache_shift(inode-i_mapping)
+   - inode-i_blkbits);
if (!ra_has_index(filp-f_ra, index))
page_cache_sync_readahead(
sb-s_bdev-bd_inode-i_mapping,
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
index eb3c264..986519b 100644
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -1224,7 +1224,7 @@ static int ext3_ordered_commit_write(struct file *file, 
struct page *page,
 */
loff_t new_i_size;
 
-   new_i_size = ((loff_t)page-index  PAGE_CACHE_SHIFT) + to;
+   new_i_size = page_cache_pos(page-mapping, page-index, to);
if (new_i_size  EXT3_I(inode)-i_disksize)
EXT3_I(inode)-i_disksize = new_i_size;
ret = generic_commit_write(file, page, from, to);
@@ -1243,7 +1243,7 @@ static int ext3_writeback_commit_write(struct file *file, 
struct page *page,
int ret = 0, ret2;
loff_t new_i_size;
 
-   new_i_size = ((loff_t)page-index  PAGE_CACHE_SHIFT) + to;
+   new_i_size = page_cache_pos(inode-i_mapping, page-index, to);
if (new_i_size  EXT3_I(inode)-i_disksize)
EXT3_I(inode)-i_disksize = new_i_size;
 
@@ -1270,7 +1270,7 @@ static int ext3_journalled_commit_write(struct file *file,
/*
 * Here we duplicate the generic_commit_write() functionality
 */
-   pos = ((loff_t)page-index  PAGE_CACHE_SHIFT) + to;
+   pos = page_cache_pos(page-mapping, page-index, to);
 
ret = walk_page_buffers(handle, page_buffers(page), from,
to, partial, commit_write_fn);
@@ -1422,6 +1422,7 @@ static int ext3_ordered_writepage(struct page *page,
handle_t *handle = NULL;
int ret = 0;
int err;
+   int pagesize = page_cache_size(inode-i_mapping);
 
J_ASSERT(PageLocked(page));
 
@@ -1444,8 +1445,7 @@ static int ext3_ordered_writepage(struct page *page,
(1  BH_Dirty)|(1  BH_Uptodate));
}
page_bufs = page_buffers(page);
-   walk_page_buffers(handle, page_bufs, 0,
-   PAGE_CACHE_SIZE, NULL, bget_one);
+   walk_page_buffers(handle, page_bufs, 0, pagesize, NULL, bget_one);
 
ret = block_write_full_page(page, ext3_get_block, wbc);
 
@@ -1462,13 +1462,12 @@ static int ext3_ordered_writepage(struct page *page,
 * and generally junk.
 */
if (ret == 0) {
-   err = walk_page_buffers(handle, page_bufs, 0, PAGE_CACHE_SIZE,
-   NULL, journal_dirty_data_fn);
+   err = walk_page_buffers(handle, page_bufs, 0, pagesize,
+   NULL, journal_dirty_data_fn);
if (!ret)
ret = err;
}
-   walk_page_buffers(handle, page_bufs, 0,
-   PAGE_CACHE_SIZE, NULL, bput_one);
+   walk_page_buffers(handle, page_bufs, 0, pagesize, NULL, bput_one);
err = ext3_journal_stop(handle);
if (!ret)
ret = err;
@@ -1520,6 +1519,7 @@ static int ext3_journalled_writepage(struct page *page,
handle_t *handle = NULL;
int ret = 0;
int err;
+   int pagesize = page_cache_size(inode-i_mapping);
 
if (ext3_journal_current_handle())
goto no_write;
@@ -1536,17 +1536,16 @@ static int ext3_journalled_writepage(struct page *page,
 * doesn't seem much point in redirtying the page here.
 */
ClearPageChecked(page);
-   ret = block_prepare_write(page, 0, PAGE_CACHE_SIZE,
-   ext3_get_block);
+   ret = block_prepare_write(page, 0, pagesize, ext3_get_block);
if (ret != 0) {
ext3_journal_stop(handle);
goto out_unlock;
}
ret = walk_page_buffers(handle, page_buffers(page), 0,
-   PAGE_CACHE_SIZE, NULL, do_journal_get_write_access);
+   pagesize, NULL, do_journal_get_write_access);
 
err = walk_page_buffers(handle, page_buffers(page), 0,
-