[Top] [All Lists]

[PATCH v2 8/8] xfs: Validate log space at mount time

To: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Subject: [PATCH v2 8/8] xfs: Validate log space at mount time
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Fri, 17 May 2013 13:38:52 +0800
Delivered-to: xfs@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130329 Thunderbird/17.0.5
From: Jie Liu <jeff.liu@xxxxxxxxxx>

Validate log space during log mount stage, the underlying function will
drop a warning message via syslog in critical level if the log space is
too small or too large.

Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
 fs/xfs/xfs_log.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c
index 304b3d0..2a631d9 100644
--- a/fs/xfs/xfs_log.c
+++ b/fs/xfs/xfs_log.c
@@ -30,6 +30,7 @@
 #include "xfs_alloc_btree.h"
 #include "xfs_ialloc_btree.h"
 #include "xfs_log_recover.h"
+#include "xfs_log_rlimit.h"
 #include "xfs_trans_priv.h"
 #include "xfs_dinode.h"
 #include "xfs_inode.h"
@@ -631,6 +632,17 @@ xfs_log_mount(
+        * Validate the given log space and drop a critical message via syslog
+        * if the log size is too small that would lead to some unexpected
+        * situations in transaction log space reservation stage.
+        * Note: we can't just reject the mount if the validation fails.  This
+        * would mean that people would have to downgrade their kernel just to
+        * remedy the situation as there is no way to grow the log (short of
+        * black magic surgery with xfs_db).
+        */
+       xfs_log_validate_logspace(mp);
+       /*
         * Initialize the AIL now we have a log.
        error = xfs_trans_ail_init(mp);

<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH v2 8/8] xfs: Validate log space at mount time, Jeff Liu <=