Whamcloud - gitweb
LU-3021 ldiskfs: to not verify preallocation in umount path 83/5883/4
authorJames Simmons <uja.ornl@gmail.com>
Fri, 14 Jun 2013 11:44:17 +0000 (07:44 -0400)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 10 Jul 2013 02:47:15 +0000 (02:47 +0000)
When recovery test is running, device rdonly flag is set and all
updates will be erred out so on-disk data can be inconsistent with
memory data.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I69d3fa462c69f5f85978265075165b488661e863
Reviewed-on: http://review.whamcloud.com/5883
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
ldiskfs/kernel_patches/patches/rhel6.3/ext4-not-discard-preallocation-umount.patch [new file with mode: 0644]
ldiskfs/kernel_patches/series/ldiskfs-2.6-rhel6.4.series
ldiskfs/kernel_patches/series/ldiskfs-2.6-rhel6.series
ldiskfs/kernel_patches/series/ldiskfs-2.6-sles11.series
ldiskfs/kernel_patches/series/ldiskfs-3.0-sles11.series

diff --git a/ldiskfs/kernel_patches/patches/rhel6.3/ext4-not-discard-preallocation-umount.patch b/ldiskfs/kernel_patches/patches/rhel6.3/ext4-not-discard-preallocation-umount.patch
new file mode 100644 (file)
index 0000000..a52d91f
--- /dev/null
@@ -0,0 +1,14 @@
+Index: linux-stage/fs/ext4/mballoc.c
+===================================================================
+--- linux-stage.orig/fs/ext4/mballoc.c
++++ linux-stage/fs/ext4/mballoc.c
+@@ -3781,7 +3781,8 @@ ext4_mb_release_inode_pa(struct ext4_bud
+                * from the bitmap and continue.
+                */
+       }
+-      BUG_ON(pa->pa_free != free);
++      /* do not verify if the file system is being umounted */
++      BUG_ON(atomic_read(&sb->s_active) > 0 && pa->pa_free != free);
+       atomic_add(free, &sbi->s_mb_discarded);
+       return err;
index 6bdb397..639c546 100644 (file)
@@ -42,3 +42,4 @@ rhel6.4/ext4-fix-mbgroups-access.patch
 rhel6.3/ext4-fix-ext4_mb_add_n_trim.patch
 rhel6.3/ext4-max-dir-size.patch
 rhel6.4/ext4-max-dir-size-options.patch
+rhel6.3/ext4-not-discard-preallocation-umount.patch
index 75eb54c..89125c6 100644 (file)
@@ -42,3 +42,4 @@ rhel6.3/ext4-fix-mbgroups-access.patch
 rhel6.3/ext4-fix-ext4_mb_add_n_trim.patch
 rhel6.3/ext4-max-dir-size.patch
 rhel6.3/ext4-max-dir-size-options.patch
+rhel6.3/ext4-not-discard-preallocation-umount.patch
index 2e18297..53aa553 100644 (file)
@@ -42,3 +42,4 @@ rhel6.3/ext4-quota-first-class.patch
 rhel6.3/ext4-fix-ext4_mb_add_n_trim.patch
 rhel6.3/ext4-max-dir-size.patch
 sles11sp1/ext4-max-dir-size-options.patch
+rhel6.3/ext4-not-discard-preallocation-umount.patch
index 598524c..179edb7 100644 (file)
@@ -43,3 +43,4 @@ sles11sp2/ext4-store-tree-generation-at-find.patch
 sles11sp2/ext4_pdirop.patch
 rhel6.3/ext4-max-dir-size.patch
 sles11sp2/ext4-max-dir-size-options.patch
+rhel6.3/ext4-not-discard-preallocation-umount.patch