Thread (33 messages) 33 messages, 4 authors, 2011-07-18

Re: [PATCH 03/12] ext4: prevent a fs without journal from being resized

From: Yongqiang Yang <hidden>
Date: 2011-07-18 03:28:11

On Mon, Jul 18, 2011 at 11:17 AM, Tao Ma [off-list ref] wrote:
On 07/18/2011 10:52 AM, Yongqiang Yang wrote:
quoted
This patch prevents a fs without journal from being resized, because
it is easy to detroy the fs.
Why you want to do this?  You see any corruption?
At least in our product system, no-journal mode is heavily used and we
really don't want to disable this feature.
I did not see any corruption.  If there is no journal in a fs, then if
an error happens during online resizing, the filesystem will be
destroyed easily, I thought.  Just my thought:-)  It needs much more
feedbacks.

Thanks,
Yongqiang.
Thanks
Tao
quoted
Signed-off-by: Yongqiang Yang <redacted>
---
 fs/ext4/resize.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c
index 53d9795..33ab40d 100644
--- a/fs/ext4/resize.c
+++ b/fs/ext4/resize.c
@@ -33,6 +33,16 @@ int ext4_resize_begin(struct super_block *sb)
              return -EPERM;
      }

+     /*
+      * We are not allowed to do online-resizing on a filesystem without
+      * journal, otherwise, it is easy to destroy the filesystem.
+      */
+     if (!EXT4_SB(sb)->s_journal) {
+             ext4_warning(sb, "There is no journal for the filesystem, "
+                          "so online resizing is not allowed\n");
+             return -EPERM;
+     }
+
      if (test_and_set_bit_lock(EXT4_RESIZING, &EXT4_SB(sb)->s_resize_flags))
              ret = -EBUSY;


-- 
Best Wishes
Yongqiang Yang
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help