From: alex Date: Fri, 17 Oct 2003 14:45:38 +0000 (+0000) Subject: - fix against b2021 X-Git-Tag: v1_7_0_51~2^9~231 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=0d2a5aee3344cba6ac5945bc2b33c28a405c7d51;p=fs%2Flustre-release.git - fix against b2021 --- diff --git a/lustre/kernel_patches/patches/ext3-map_inode_page-2.6.0.patch b/lustre/kernel_patches/patches/ext3-map_inode_page-2.6.0.patch index 1a37580..675d54e 100644 --- a/lustre/kernel_patches/patches/ext3-map_inode_page-2.6.0.patch +++ b/lustre/kernel_patches/patches/ext3-map_inode_page-2.6.0.patch @@ -20,7 +20,7 @@ + + blocksize = inode->i_sb->s_blocksize; + blocks_per_page = PAGE_SIZE >> inode->i_sb->s_blocksize_bits; -+ iblock = page->index >> (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); ++ iblock = page->index * blocks_per_page; + + for (i = 0; i < blocks_per_page; i++, iblock++) { + blocks[i] = ext3_bmap(inode->i_mapping, iblock); @@ -40,7 +40,7 @@ + if (IS_ERR(handle)) + return PTR_ERR(handle); + -+ iblock = page->index >> (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); ++ iblock = page->index * blocks_per_page; + for (i = 0; i < blocks_per_page; i++, iblock++) { + if (blocks[i] != 0) + continue; diff --git a/lustre/kernel_patches/patches/ext3-map_inode_page_2.4.18.patch b/lustre/kernel_patches/patches/ext3-map_inode_page_2.4.18.patch index b56b7b0..0a0f7f3 100644 --- a/lustre/kernel_patches/patches/ext3-map_inode_page_2.4.18.patch +++ b/lustre/kernel_patches/patches/ext3-map_inode_page_2.4.18.patch @@ -5,11 +5,25 @@ fs/ext3/inode.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) -Index: linux-2.4.18-p4smp/fs/ext3/inode.c -=================================================================== ---- linux-2.4.18-p4smp.orig/fs/ext3/inode.c Fri Jul 25 15:47:03 2003 -+++ linux-2.4.18-p4smp/fs/ext3/inode.c Fri Jul 25 15:47:04 2003 -@@ -3004,3 +3004,58 @@ +--- linux-2.4.18-chaos/fs/ext3/ext3-exports.c~ext3-map_inode_page_2.4.18 2003-10-17 14:38:21.000000000 +0400 ++++ linux-2.4.18-chaos-alexey/fs/ext3/ext3-exports.c 2003-10-17 14:38:22.000000000 +0400 +@@ -9,6 +9,8 @@ + + int ext3_prep_san_write(struct inode *inode, long *blocks, + int nblocks, loff_t newsize); ++int ext3_map_inode_page(struct inode *inode, struct page *page, ++ unsigned long *block, int *created, int create); + + EXPORT_SYMBOL(ext3_force_commit); + EXPORT_SYMBOL(ext3_bread); +@@ -18,3 +20,4 @@ EXPORT_SYMBOL(ext3_xattr_get); + EXPORT_SYMBOL(ext3_xattr_list); + EXPORT_SYMBOL(ext3_xattr_set); + EXPORT_SYMBOL(ext3_prep_san_write); ++EXPORT_SYMBOL(ext3_map_inode_page); +--- linux-2.4.18-chaos/fs/ext3/inode.c~ext3-map_inode_page_2.4.18 2003-10-17 14:38:21.000000000 +0400 ++++ linux-2.4.18-chaos-alexey/fs/ext3/inode.c 2003-10-17 14:38:22.000000000 +0400 +@@ -3004,3 +3004,58 @@ int ext3_prep_san_write(struct inode *in ret = ret2; return ret; } @@ -25,7 +39,7 @@ Index: linux-2.4.18-p4smp/fs/ext3/inode.c + + blocksize = inode->i_sb->s_blocksize; + blocks_per_page = PAGE_SIZE >> inode->i_sb->s_blocksize_bits; -+ iblock = page->index >> (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); ++ iblock = page->index * blocks_per_page; + + for (i = 0; i < blocks_per_page; i++, iblock++) { + blocks[i] = ext3_bmap(inode->i_mapping, iblock); @@ -47,7 +61,7 @@ Index: linux-2.4.18-p4smp/fs/ext3/inode.c + if (IS_ERR(handle)) + return PTR_ERR(handle); + -+ iblock = page->index >> (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); ++ iblock = page->index * blocks_per_page; + for (i = 0; i < blocks_per_page; i++, iblock++) { + if (blocks[i] != 0) + continue; @@ -68,33 +82,5 @@ Index: linux-2.4.18-p4smp/fs/ext3/inode.c + unlock_kernel(); + return rc; +} -Index: linux-2.4.18-p4smp/fs/ext3/ext3-exports.c -=================================================================== ---- linux-2.4.18-p4smp.orig/fs/ext3/ext3-exports.c Fri Jul 25 15:47:03 2003 -+++ linux-2.4.18-p4smp/fs/ext3/ext3-exports.c Fri Jul 25 15:47:04 2003 -@@ -9,6 +9,8 @@ - - int ext3_prep_san_write(struct inode *inode, long *blocks, - int nblocks, loff_t newsize); -+int ext3_map_inode_page(struct inode *inode, struct page *page, -+ unsigned long *block, int *created, int create); - - EXPORT_SYMBOL(ext3_force_commit); - EXPORT_SYMBOL(ext3_bread); -@@ -18,3 +20,4 @@ - EXPORT_SYMBOL(ext3_xattr_list); - EXPORT_SYMBOL(ext3_xattr_set); - EXPORT_SYMBOL(ext3_prep_san_write); -+EXPORT_SYMBOL(ext3_map_inode_page); -Index: linux-2.4.18-p4smp/include/linux/mm.h -=================================================================== ---- linux-2.4.18-p4smp.orig/include/linux/mm.h Fri Jul 25 15:48:31 2003 -+++ linux-2.4.18-p4smp/include/linux/mm.h Fri Jul 25 15:49:41 2003 -@@ -186,6 +186,7 @@ - void *virtual; /* Kernel virtual address (NULL if - not kmapped, ie. highmem) */ - #endif /* CONFIG_HIGHMEM || CONFIG_SPARC64 */ -+ unsigned long private; - } mem_map_t; - - /* + +_