[19/41] Use page_cache_xxx for fs/xfs

2007-09-11 Thread Christoph Lameter
Use page_cache_xxx for fs/xfs

Signed-off-by: Christoph Lameter <[EMAIL PROTECTED]>
---
 fs/xfs/linux-2.6/xfs_aops.c |   55 ++
 fs/xfs/linux-2.6/xfs_lrw.c  |6 ++--
 2 files changed, 32 insertions(+), 29 deletions(-)

diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c
index fd4105d..e48817a 100644
--- a/fs/xfs/linux-2.6/xfs_aops.c
+++ b/fs/xfs/linux-2.6/xfs_aops.c
@@ -74,7 +74,7 @@ xfs_page_trace(
xfs_inode_t *ip;
bhv_vnode_t *vp = vn_from_inode(inode);
loff_t  isize = i_size_read(inode);
-   loff_t  offset = page_offset(page);
+   loff_t  offset = page_cache_offset(page->mapping);
int delalloc = -1, unmapped = -1, unwritten = -1;
 
if (page_has_buffers(page))
@@ -610,7 +610,7 @@ xfs_probe_page(
break;
} while ((bh = bh->b_this_page) != head);
} else
-   ret = mapped ? 0 : PAGE_CACHE_SIZE;
+   ret = mapped ? 0 : page_cache_size(page->mapping);
}
 
return ret;
@@ -637,7 +637,7 @@ xfs_probe_cluster(
} while ((bh = bh->b_this_page) != head);
 
/* if we reached the end of the page, sum forwards in following pages */
-   tlast = i_size_read(inode) >> PAGE_CACHE_SHIFT;
+   tlast = page_cache_index(inode->i_mapping, i_size_read(inode));
tindex = startpage->index + 1;
 
/* Prune this back to avoid pathological behavior */
@@ -655,14 +655,14 @@ xfs_probe_cluster(
size_t pg_offset, len = 0;
 
if (tindex == tlast) {
-   pg_offset =
-   i_size_read(inode) & (PAGE_CACHE_SIZE - 1);
+   pg_offset = page_cache_offset(inode->i_mapping,
+   i_size_read(inode));
if (!pg_offset) {
done = 1;
break;
}
} else
-   pg_offset = PAGE_CACHE_SIZE;
+   pg_offset = page_cache_size(inode->i_mapping);
 
if (page->index == tindex && !TestSetPageLocked(page)) {
len = xfs_probe_page(page, pg_offset, mapped);
@@ -744,7 +744,8 @@ xfs_convert_page(
int bbits = inode->i_blkbits;
int len, page_dirty;
int count = 0, done = 0, uptodate = 1;
-   xfs_off_t   offset = page_offset(page);
+   struct address_space*map = inode->i_mapping;
+   xfs_off_t   offset = page_cache_pos(map, page->index, 0);
 
if (page->index != tindex)
goto fail;
@@ -752,7 +753,7 @@ xfs_convert_page(
goto fail;
if (PageWriteback(page))
goto fail_unlock_page;
-   if (page->mapping != inode->i_mapping)
+   if (page->mapping != map)
goto fail_unlock_page;
if (!xfs_is_delayed_page(page, (*ioendp)->io_type))
goto fail_unlock_page;
@@ -764,20 +765,20 @@ xfs_convert_page(
 * Derivation:
 *
 * End offset is the highest offset that this page should represent.
-* If we are on the last page, (end_offset & (PAGE_CACHE_SIZE - 1))
-* will evaluate non-zero and be less than PAGE_CACHE_SIZE and
+* If we are on the last page, (end_offset & page_cache_mask())
+* will evaluate non-zero and be less than page_cache_size() and
 * hence give us the correct page_dirty count. On any other page,
 * it will be zero and in that case we need page_dirty to be the
 * count of buffers on the page.
 */
end_offset = min_t(unsigned long long,
-   (xfs_off_t)(page->index + 1) << PAGE_CACHE_SHIFT,
+   (xfs_off_t)(page->index + 1) << page_cache_shift(map),
i_size_read(inode));
 
len = 1 << inode->i_blkbits;
-   p_offset = min_t(unsigned long, end_offset & (PAGE_CACHE_SIZE - 1),
-   PAGE_CACHE_SIZE);
-   p_offset = p_offset ? roundup(p_offset, len) : PAGE_CACHE_SIZE;
+   p_offset = min_t(unsigned long, page_cache_offset(map, end_offset),
+   page_cache_size(map));
+   p_offset = p_offset ? roundup(p_offset, len) : page_cache_size(map);
page_dirty = p_offset / len;
 
bh = head = page_buffers(page);
@@ -933,6 +934,8 @@ xfs_page_state_convert(
int page_dirty, count = 0;
int trylock = 0;
int all_bh = unmapped;
+   struct address_space*map = 

[19/41] Use page_cache_xxx for fs/xfs

2007-09-11 Thread Christoph Lameter
Use page_cache_xxx for fs/xfs

Signed-off-by: Christoph Lameter [EMAIL PROTECTED]
---
 fs/xfs/linux-2.6/xfs_aops.c |   55 ++
 fs/xfs/linux-2.6/xfs_lrw.c  |6 ++--
 2 files changed, 32 insertions(+), 29 deletions(-)

diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c
index fd4105d..e48817a 100644
--- a/fs/xfs/linux-2.6/xfs_aops.c
+++ b/fs/xfs/linux-2.6/xfs_aops.c
@@ -74,7 +74,7 @@ xfs_page_trace(
xfs_inode_t *ip;
bhv_vnode_t *vp = vn_from_inode(inode);
loff_t  isize = i_size_read(inode);
-   loff_t  offset = page_offset(page);
+   loff_t  offset = page_cache_offset(page-mapping);
int delalloc = -1, unmapped = -1, unwritten = -1;
 
if (page_has_buffers(page))
@@ -610,7 +610,7 @@ xfs_probe_page(
break;
} while ((bh = bh-b_this_page) != head);
} else
-   ret = mapped ? 0 : PAGE_CACHE_SIZE;
+   ret = mapped ? 0 : page_cache_size(page-mapping);
}
 
return ret;
@@ -637,7 +637,7 @@ xfs_probe_cluster(
} while ((bh = bh-b_this_page) != head);
 
/* if we reached the end of the page, sum forwards in following pages */
-   tlast = i_size_read(inode)  PAGE_CACHE_SHIFT;
+   tlast = page_cache_index(inode-i_mapping, i_size_read(inode));
tindex = startpage-index + 1;
 
/* Prune this back to avoid pathological behavior */
@@ -655,14 +655,14 @@ xfs_probe_cluster(
size_t pg_offset, len = 0;
 
if (tindex == tlast) {
-   pg_offset =
-   i_size_read(inode)  (PAGE_CACHE_SIZE - 1);
+   pg_offset = page_cache_offset(inode-i_mapping,
+   i_size_read(inode));
if (!pg_offset) {
done = 1;
break;
}
} else
-   pg_offset = PAGE_CACHE_SIZE;
+   pg_offset = page_cache_size(inode-i_mapping);
 
if (page-index == tindex  !TestSetPageLocked(page)) {
len = xfs_probe_page(page, pg_offset, mapped);
@@ -744,7 +744,8 @@ xfs_convert_page(
int bbits = inode-i_blkbits;
int len, page_dirty;
int count = 0, done = 0, uptodate = 1;
-   xfs_off_t   offset = page_offset(page);
+   struct address_space*map = inode-i_mapping;
+   xfs_off_t   offset = page_cache_pos(map, page-index, 0);
 
if (page-index != tindex)
goto fail;
@@ -752,7 +753,7 @@ xfs_convert_page(
goto fail;
if (PageWriteback(page))
goto fail_unlock_page;
-   if (page-mapping != inode-i_mapping)
+   if (page-mapping != map)
goto fail_unlock_page;
if (!xfs_is_delayed_page(page, (*ioendp)-io_type))
goto fail_unlock_page;
@@ -764,20 +765,20 @@ xfs_convert_page(
 * Derivation:
 *
 * End offset is the highest offset that this page should represent.
-* If we are on the last page, (end_offset  (PAGE_CACHE_SIZE - 1))
-* will evaluate non-zero and be less than PAGE_CACHE_SIZE and
+* If we are on the last page, (end_offset  page_cache_mask())
+* will evaluate non-zero and be less than page_cache_size() and
 * hence give us the correct page_dirty count. On any other page,
 * it will be zero and in that case we need page_dirty to be the
 * count of buffers on the page.
 */
end_offset = min_t(unsigned long long,
-   (xfs_off_t)(page-index + 1)  PAGE_CACHE_SHIFT,
+   (xfs_off_t)(page-index + 1)  page_cache_shift(map),
i_size_read(inode));
 
len = 1  inode-i_blkbits;
-   p_offset = min_t(unsigned long, end_offset  (PAGE_CACHE_SIZE - 1),
-   PAGE_CACHE_SIZE);
-   p_offset = p_offset ? roundup(p_offset, len) : PAGE_CACHE_SIZE;
+   p_offset = min_t(unsigned long, page_cache_offset(map, end_offset),
+   page_cache_size(map));
+   p_offset = p_offset ? roundup(p_offset, len) : page_cache_size(map);
page_dirty = p_offset / len;
 
bh = head = page_buffers(page);
@@ -933,6 +934,8 @@ xfs_page_state_convert(
int page_dirty, count = 0;
int trylock = 0;
int all_bh = unmapped;
+   struct address_space*map = inode-i_mapping;
+   int