Whamcloud - gitweb
i=adilger
[fs/lustre-release.git] / lustre / kernel_patches / patches / ext3-extents-asyncdel-2.4.24.patch
index 04d418f..bc752e5 100644 (file)
@@ -2,7 +2,7 @@ Index: linux-2.4.24/fs/ext3/inode.c
 ===================================================================
 --- linux-2.4.24.orig/fs/ext3/inode.c  2004-05-18 12:34:48.000000000 -0700
 +++ linux-2.4.24/fs/ext3/inode.c       2004-05-18 12:47:50.000000000 -0700
-@@ -2244,6 +2244,12 @@
+@@ -2244,6 +2244,13 @@
        else
                inode->u.ext3_i.i_extra_isize = 0;
  
@@ -10,18 +10,21 @@ Index: linux-2.4.24/fs/ext3/inode.c
 +              inode->u.ext3_i.i_cached_extent[0] = 0;
 +              inode->u.ext3_i.i_cached_extent[1] = 0;
 +              inode->u.ext3_i.i_cached_extent[2] = 0;
++              inode->u.ext3_i.i_cached_extent[3] = 0;
 +      }
 +
        if (S_ISREG(inode->i_mode)) {
                inode->i_op = &ext3_file_inode_operations;
                inode->i_fop = &ext3_file_operations;
-@@ -2659,6 +2665,10 @@
+@@ -2659,6 +2665,12 @@
  
        memcpy(nei->i_data, oei->i_data, sizeof(nei->i_data));
        memset(oei->i_data, 0, sizeof(oei->i_data));
 +      if (EXT3_I(old_inode)->i_flags & EXT3_EXTENTS_FL) {
 +              EXT3_I(new_inode)->i_flags |= EXT3_EXTENTS_FL;
-+              ext3_extents_initialize_blockmap(handle, old_inode);
++              ext3_extents_initialize_blockmap(handle, old_inode);
++      } else {
++              EXT3_I(new_inode)->i_flags &= ~EXT3_EXTENTS_FL;
 +      }
  
        nei->i_disksize = oei->i_disksize;