X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Fkernel_patches%2Fpatches%2Fext3-ea-in-inode-2.4.20.patch;h=0e93cedebf6d87149c3d4d0b07b0bd19d0084725;hb=9e1de69f7729392aea24c8bfc22d0220a0eeeedb;hp=aeff645deef732b191032b1fdc31e21789231aac;hpb=3de901fceee79de12a31428bcc6ba3a00f10d1fe;p=fs%2Flustre-release.git diff --git a/lustre/kernel_patches/patches/ext3-ea-in-inode-2.4.20.patch b/lustre/kernel_patches/patches/ext3-ea-in-inode-2.4.20.patch index aeff645..0e93ced 100644 --- a/lustre/kernel_patches/patches/ext3-ea-in-inode-2.4.20.patch +++ b/lustre/kernel_patches/patches/ext3-ea-in-inode-2.4.20.patch @@ -8,19 +8,17 @@ --- linux-2.4.20/fs/ext3/ialloc.c~ext3-ea-in-inode-2.4.20 2003-10-08 23:18:08.000000000 +0400 +++ linux-2.4.20-alexey/fs/ext3/ialloc.c 2003-10-12 16:25:21.000000000 +0400 -@@ -577,6 +577,12 @@ repeat: - insert_inode_hash(inode); +@@ -577,6 +577,10 @@ repeat: inode->i_generation = sb->u.ext3_sb.s_next_generation++; -+ if (EXT3_INODE_SIZE(inode->i_sb) > EXT3_GOOD_OLD_INODE_SIZE) { -+ inode->u.ext3_i.i_extra_isize = sizeof(__u16) /* i_extra_isize */ -+ + sizeof(__u16); /* i_pad1 */ -+ } else -+ inode->u.ext3_i.i_extra_isize = 0; -+ inode->u.ext3_i.i_state = EXT3_STATE_NEW; - err = ext3_get_inode_loc_new(inode, &iloc, 1); - if (err) goto fail; ++ inode->u.ext3_i.i_extra_isize = ++ (EXT3_INODE_SIZE(inode->i_sb) > EXT3_GOOD_OLD_INODE_SIZE) ? ++ sizeof(struct ext3_inode) - EXT3_GOOD_OLD_INODE_SIZE : 0; ++ + err = ext3_get_inode_loc_new(inode, &iloc, 1); + if (err) goto fail; + BUFFER_TRACE(iloc->bh, "get_write_access"); --- linux-2.4.20/fs/ext3/inode.c~ext3-ea-in-inode-2.4.20 2003-10-08 23:18:08.000000000 +0400 +++ linux-2.4.20-alexey/fs/ext3/inode.c 2003-10-12 16:25:21.000000000 +0400 @@ -2209,6 +2209,12 @@ void ext3_read_inode(struct inode * inod @@ -93,7 +91,7 @@ } /* -+ * ext3_xattr_ibode_get() ++ * ext3_xattr_ibody_get() + * + * routine looks for attribute in inode body and returns it's value and size + */ @@ -741,7 +739,7 @@ + if ((sbi->s_inode_size < EXT3_GOOD_OLD_INODE_SIZE) || + (sbi->s_inode_size & (sbi->s_inode_size - 1)) || + (sbi->s_inode_size > blocksize)) { -+ printk (KERN_ERR ++ printk (KERN_ERR "EXT3-fs: unsupported inode size: %d\n", sbi->s_inode_size); goto failed_mount;