gfs2-utils: RHEL7 - mkfs.gfs2: Allow longer cluster names
by Paul Evans
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=a523af58...
Commit: a523af584645a01bb4900b10d0c9232d0ae50339
Parent: e394013ec812e7fa359344a3b901b8b15b15bc4a
Author: Paul Evans <pevans(a)redhat.com>
AuthorDate: Wed Apr 22 17:43:26 2015 +0100
Committer: Paul Evans <pevans(a)redhat.com>
CommitterDate: Fri Apr 24 17:09:45 2015 +0100
mkfs.gfs2: Allow longer cluster names
Increase the enforced limit for cluster name to 32 bytes and file
system name to 30 bytes for mkfs.gfs2 (was previously 16 + 16
bytes).
Also increased this limit in tunegfs2 when labelling gfs2 file
systems.
Updated the formation in the man pages along with adding a new test
case for mkfs.gfs2 to validate the increased cluster/file system
name support.
Resolves: rhbz#1202831
Signed-off-by: Paul Evans <pevans(a)redhat.com>
---
gfs2/man/mkfs.gfs2.8 | 4 ++--
gfs2/mkfs/main_mkfs.c | 4 ++--
gfs2/tune/super.c | 2 +-
tests/mkfs.at | 8 ++++++++
4 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/gfs2/man/mkfs.gfs2.8 b/gfs2/man/mkfs.gfs2.8
index ceb6f38..f480082 100644
--- a/gfs2/man/mkfs.gfs2.8
+++ b/gfs2/man/mkfs.gfs2.8
@@ -101,9 +101,9 @@ bigger file systems will have bigger RGs for better performance.
The lock table field appropriate to the lock module you're using.
It is \fIclustername:fsname\fR.
Clustername must match that in cluster.conf; only members of this
-cluster are permitted to use this file system.
+cluster are permitted to use this file system (1 to 32 characters).
Fsname is a unique file system name used to distinguish this GFS2 file
-system from others created (1 to 16 characters). Lock_nolock doesn't
+system from others created (1 to 30 characters). Lock_nolock doesn't
use this field. Valid \fIclustername\fRs and \fIfsname\fRs may only contain
alphanumeric characters, hyphens (-) and underscores (_).
.TP
diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
index 0636f0b..3fab08c 100644
--- a/gfs2/mkfs/main_mkfs.c
+++ b/gfs2/mkfs/main_mkfs.c
@@ -398,7 +398,7 @@ static void test_locking(const char *lockproto, const char *locktable)
if (c == locktable)
die("%s %s\n", errprefix, _("cluster name is missing"));
- if (c - locktable > 16)
+ if (c - locktable > 32)
die("%s %s\n", errprefix, _("cluster name is too long"));
c++;
@@ -406,7 +406,7 @@ static void test_locking(const char *lockproto, const char *locktable)
die("%s %s\n", errprefix, _("contains more than one colon"));
if (!strlen(c))
die("%s %s\n", errprefix, _("file system name is missing"));
- if (strlen(c) > 16)
+ if (strlen(c) > 30)
die("%s %s\n", errprefix, _("file system name is too long"));
} else {
die( _("Invalid lock protocol: %s\n"), lockproto);
diff --git a/gfs2/tune/super.c b/gfs2/tune/super.c
index cbd0026..560ce68 100644
--- a/gfs2/tune/super.c
+++ b/gfs2/tune/super.c
@@ -194,7 +194,7 @@ int change_locktable(struct tunegfs2 *tfs, const char *locktable)
fprintf(stderr, "%s %s\n", errpre, _("missing colon"));
return EX_DATAERR;
}
- if (strlen(++fsname) > 16) {
+ if (strlen(++fsname) > 30) {
fprintf(stderr, "%s %s\n", errpre, _("file system name is too long"));
return EX_DATAERR;
}
diff --git a/tests/mkfs.at b/tests/mkfs.at
index 438184c..e25b6dc 100644
--- a/tests/mkfs.at
+++ b/tests/mkfs.at
@@ -89,3 +89,11 @@ AT_SETUP([Min. quota change file size])
AT_KEYWORDS(mkfs.gfs2 mkfs)
GFS_FSCK_CHECK([$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT])
AT_CLEANUP
+
+AT_SETUP([Incr. cluster/file system name validation])
+AT_KEYWORDS(mkfs.gfs2 mkfs)
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "" $GFS_TGT], 255, [ignore], [ignore])
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT], 255, [ignore], [ignore])
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT], 255, [ignore], [ignore])
+GFS_FSCK_CHECK([$GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT])
+AT_CLEANUP
9 years
gfs2-utils: master - mkfs.gfs2: Allow longer cluster names
by Paul Evans
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=335552bc...
Commit: 335552bcf1345d9083690e1ef892fa856ac1e59e
Parent: f1028ec054f2d7f85a449b2bf0894e0435c01d6a
Author: Paul Evans <pevans(a)redhat.com>
AuthorDate: Wed Apr 22 17:43:26 2015 +0100
Committer: Paul Evans <pevans(a)redhat.com>
CommitterDate: Wed Apr 22 17:43:26 2015 +0100
mkfs.gfs2: Allow longer cluster names
Increase the enforced limit for cluster name to 32 bytes and file
system name to 30 bytes for mkfs.gfs2 (was previously 16 + 16
bytes).
Also increased this limit in tunegfs2 when labelling gfs2 file
systems.
Updated the formation in the man pages along with adding a new test
case for mkfs.gfs2 to validate the increased cluster/file system
name support.
Signed-off-by: Paul Evans <pevans(a)redhat.com>
---
gfs2/man/mkfs.gfs2.8 | 4 ++--
gfs2/mkfs/main_mkfs.c | 4 ++--
gfs2/tune/super.c | 2 +-
tests/mkfs.at | 8 ++++++++
4 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/gfs2/man/mkfs.gfs2.8 b/gfs2/man/mkfs.gfs2.8
index ceb6f38..f480082 100644
--- a/gfs2/man/mkfs.gfs2.8
+++ b/gfs2/man/mkfs.gfs2.8
@@ -101,9 +101,9 @@ bigger file systems will have bigger RGs for better performance.
The lock table field appropriate to the lock module you're using.
It is \fIclustername:fsname\fR.
Clustername must match that in cluster.conf; only members of this
-cluster are permitted to use this file system.
+cluster are permitted to use this file system (1 to 32 characters).
Fsname is a unique file system name used to distinguish this GFS2 file
-system from others created (1 to 16 characters). Lock_nolock doesn't
+system from others created (1 to 30 characters). Lock_nolock doesn't
use this field. Valid \fIclustername\fRs and \fIfsname\fRs may only contain
alphanumeric characters, hyphens (-) and underscores (_).
.TP
diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
index 0636f0b..3fab08c 100644
--- a/gfs2/mkfs/main_mkfs.c
+++ b/gfs2/mkfs/main_mkfs.c
@@ -398,7 +398,7 @@ static void test_locking(const char *lockproto, const char *locktable)
if (c == locktable)
die("%s %s\n", errprefix, _("cluster name is missing"));
- if (c - locktable > 16)
+ if (c - locktable > 32)
die("%s %s\n", errprefix, _("cluster name is too long"));
c++;
@@ -406,7 +406,7 @@ static void test_locking(const char *lockproto, const char *locktable)
die("%s %s\n", errprefix, _("contains more than one colon"));
if (!strlen(c))
die("%s %s\n", errprefix, _("file system name is missing"));
- if (strlen(c) > 16)
+ if (strlen(c) > 30)
die("%s %s\n", errprefix, _("file system name is too long"));
} else {
die( _("Invalid lock protocol: %s\n"), lockproto);
diff --git a/gfs2/tune/super.c b/gfs2/tune/super.c
index cbd0026..560ce68 100644
--- a/gfs2/tune/super.c
+++ b/gfs2/tune/super.c
@@ -194,7 +194,7 @@ int change_locktable(struct tunegfs2 *tfs, const char *locktable)
fprintf(stderr, "%s %s\n", errpre, _("missing colon"));
return EX_DATAERR;
}
- if (strlen(++fsname) > 16) {
+ if (strlen(++fsname) > 30) {
fprintf(stderr, "%s %s\n", errpre, _("file system name is too long"));
return EX_DATAERR;
}
diff --git a/tests/mkfs.at b/tests/mkfs.at
index 438184c..e25b6dc 100644
--- a/tests/mkfs.at
+++ b/tests/mkfs.at
@@ -89,3 +89,11 @@ AT_SETUP([Min. quota change file size])
AT_KEYWORDS(mkfs.gfs2 mkfs)
GFS_FSCK_CHECK([$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT])
AT_CLEANUP
+
+AT_SETUP([Incr. cluster/file system name validation])
+AT_KEYWORDS(mkfs.gfs2 mkfs)
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "" $GFS_TGT], 255, [ignore], [ignore])
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT], 255, [ignore], [ignore])
+AT_CHECK([$GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT], 255, [ignore], [ignore])
+GFS_FSCK_CHECK([$GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT])
+AT_CLEANUP
9 years
gfs2-utils: RHEL7 - fsck.gfs2: replace recent i_goal fixes with simple logic
by Abhijith Das
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=e394013e...
Commit: e394013ec812e7fa359344a3b901b8b15b15bc4a
Parent: be3383e4f295c0d519c811ac9ace6bbbfa5f58e3
Author: Abhi Das <adas(a)redhat.com>
AuthorDate: Tue Apr 14 19:51:55 2015 -0500
Committer: Abhi Das <adas(a)redhat.com>
CommitterDate: Fri Apr 17 09:51:22 2015 -0500
fsck.gfs2: replace recent i_goal fixes with simple logic
This patch reverses the recent set of i_goal fixes for fsck.gfs2.
This is because of two problems.
1. It is not possible to determine if a valid block within the fs
is the correct goal block for a given inode.
2. Conversely, given an inode, it is also not possible to accurately
determine what its goal block should be.
The previous patches assumed that the last block of a file is its
goal block, but that is not true if the file is a directory or if
its blocks are not allocated sequentially. fsck.gfs2 would flag
these inodes incorrectly as having bad i_goal values.
This patch takes a simple approach. It checks if the i_goal of a
given inode is out of bounds of the fs. If so, we can be certain
that it is wrong and we set it to the inode metadata block. This
is a safe starting point for gfs2 to determine where to allocate
from next.
Resolves: rhbz#1186515
Signed-off-by: Abhi Das <adas(a)redhat.com>
---
gfs2/fsck/metawalk.c | 92 ++---------------------------------------------
gfs2/fsck/metawalk.h | 5 ---
gfs2/fsck/pass1.c | 35 +++++++++++++++---
gfs2/libgfs2/libgfs2.h | 1 -
4 files changed, 34 insertions(+), 99 deletions(-)
diff --git a/gfs2/fsck/metawalk.c b/gfs2/fsck/metawalk.c
index f05fb51..4d5a660 100644
--- a/gfs2/fsck/metawalk.c
+++ b/gfs2/fsck/metawalk.c
@@ -1428,8 +1428,7 @@ static int build_and_check_metalist(struct gfs2_inode *ip, osi_list_t *mlp,
*/
static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass,
struct gfs2_buffer_head *bh, int head_size,
- uint64_t *last_block, uint64_t *blks_checked,
- uint64_t *error_blk)
+ uint64_t *blks_checked, uint64_t *error_blk)
{
int error = 0, rc = 0;
uint64_t block, *ptr;
@@ -1444,7 +1443,7 @@ static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass,
if (skip_this_pass || fsck_abort)
return error;
- *last_block = block = be64_to_cpu(*ptr);
+ block = be64_to_cpu(*ptr);
/* It's important that we don't call valid_block() and
bypass calling check_data on invalid blocks because that
would defeat the rangecheck_block related functions in
@@ -1548,15 +1547,12 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
struct gfs2_buffer_head *bh;
uint32_t height = ip->i_di.di_height;
int i, head_size;
- uint64_t blks_checked = 0, last_block = 0;
+ uint64_t blks_checked = 0;
int error, rc;
int metadata_clean = 0;
uint64_t error_blk = 0;
int hit_error_blk = 0;
- if (!height && pass->check_i_goal)
- pass->check_i_goal(ip, ip->i_di.di_num.no_addr,
- pass->private);
if (!height && !is_dir(&ip->i_di, ip->i_sbd->gfs1))
return 0;
@@ -1575,9 +1571,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
* comprise the directory hash table, so we perform the directory
* checks and exit. */
if (is_dir(&ip->i_di, ip->i_sbd->gfs1)) {
- last_block = ip->i_di.di_num.no_addr;
- if (pass->check_i_goal)
- pass->check_i_goal(ip, last_block, pass->private);
if (!(ip->i_di.di_flags & GFS2_DIF_EXHASH))
goto out;
/* check validity of leaf blocks and leaf chains */
@@ -1604,7 +1597,7 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
if (pass->check_data)
error = check_data(ip, pass, bh, head_size,
- &last_block, &blks_checked, &error_blk);
+ &blks_checked, &error_blk);
if (pass->big_file_msg && ip->i_di.di_blocks > COMFORTABLE_BLKS)
pass->big_file_msg(ip, blks_checked);
}
@@ -1616,8 +1609,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
(unsigned long long)ip->i_di.di_num.no_addr);
fflush(stdout);
}
- if (!error && pass->check_i_goal)
- pass->check_i_goal(ip, last_block, pass->private);
undo_metalist:
if (!error)
goto out;
@@ -1958,80 +1949,6 @@ static int alloc_leaf(struct gfs2_inode *ip, uint64_t block, void *private)
return 0;
}
-/**
- * rgrp_contains_block - Check if the rgrp provided contains the
- * given block. Taken directly from the gfs2 kernel code
- * @rgd: The rgrp to search within
- * @block: The block to search for
- *
- * Returns: 1 if present, 0 if not.
- */
-static inline int rgrp_contains_block(struct rgrp_tree *rgd, uint64_t block)
-{
- uint64_t first = rgd->ri.ri_data0;
- uint64_t last = first + rgd->ri.ri_data;
- return first <= block && block < last;
-}
-
-/**
- * check_i_goal
- * @ip
- * @goal_blk: What the goal block should be for this inode
- *
- * The goal block for a regular file is typically the last
- * data block of the file. If we can't get the right value,
- * the inode metadata block is the next best thing.
- *
- * Returns: 0 if corrected, 1 if not corrected
- */
-int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk,
- void *private)
-{
- struct gfs2_sbd *sdp = ip->i_sbd;
- uint64_t i_block = ip->i_di.di_num.no_addr;
-
- /* Don't fix gfs1 inodes, system inodes or inodes whose goal blocks are
- * set to the inode blocks themselves. */
- if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM ||
- ip->i_di.di_goal_meta == i_block)
- return 0;
- /* Don't fix directory goal blocks unless we know they're wrong.
- * i.e. out of bounds of the fs. Directories can easily have blocks
- * outside of the dinode's rgrp and thus we have no way of knowing
- * if the goal block is bogus or not. */
- if (is_dir(&ip->i_di, ip->i_sbd->gfs1) &&
- (ip->i_di.di_goal_meta > sdp->sb_addr &&
- ip->i_di.di_goal_meta <= sdp->fssize))
- return 0;
- /* We default to the inode block */
- if (!goal_blk)
- goal_blk = i_block;
-
- if (ip->i_di.di_goal_meta != goal_blk) {
- /* If the existing goal block is in the same rgrp as the inode,
- * we give the benefit of doubt and assume the value is correct */
- if (ip->i_rgd &&
- rgrp_contains_block(ip->i_rgd, ip->i_di.di_goal_meta))
- goto skip;
- log_err( _("Error: inode %llu (0x%llx) has invalid "
- "allocation goal block %llu (0x%llx). Should"
- " be %llu (0x%llx)\n"),
- (unsigned long long)i_block, (unsigned long long)i_block,
- (unsigned long long)ip->i_di.di_goal_meta,
- (unsigned long long)ip->i_di.di_goal_meta,
- (unsigned long long)goal_blk, (unsigned long long)goal_blk);
- if (query( _("Fix the invalid goal block? (y/n) "))) {
- ip->i_di.di_goal_meta = ip->i_di.di_goal_data = goal_blk;
- bmodified(ip->i_bh);
- } else {
- log_err(_("Invalid goal block not fixed.\n"));
- return 1;
- }
- }
-skip:
- return 0;
-}
-
struct metawalk_fxns alloc_fxns = {
.private = NULL,
.check_leaf = alloc_leaf,
@@ -2042,7 +1959,6 @@ struct metawalk_fxns alloc_fxns = {
.check_dentry = NULL,
.check_eattr_entry = NULL,
.check_eattr_extentry = NULL,
- .check_i_goal = check_i_goal,
.finish_eattr_indir = NULL,
};
diff --git a/gfs2/fsck/metawalk.h b/gfs2/fsck/metawalk.h
index 779360e..fa4c850 100644
--- a/gfs2/fsck/metawalk.h
+++ b/gfs2/fsck/metawalk.h
@@ -50,8 +50,6 @@ extern int _fsck_blockmap_set(struct gfs2_inode *ip, uint64_t bblock,
const char *caller, int line);
extern int check_n_fix_bitmap(struct gfs2_sbd *sdp, uint64_t blk,
int error_on_dinode, int new_blockmap_state);
-extern int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk,
- void *private);
extern void reprocess_inode(struct gfs2_inode *ip, const char *desc);
extern struct duptree *dupfind(uint64_t block);
extern struct gfs2_inode *fsck_system_inode(struct gfs2_sbd *sdp,
@@ -91,7 +89,6 @@ enum meta_check_rc {
* check_dentry:
* check_eattr_entry:
* check_eattr_extentry:
- * check_i_goal:
*/
struct metawalk_fxns {
void *private;
@@ -143,8 +140,6 @@ struct metawalk_fxns {
struct gfs2_ea_header *ea_hdr,
struct gfs2_ea_header *ea_hdr_prev,
void *private);
- int (*check_i_goal) (struct gfs2_inode *ip, uint64_t goal_blk,
- void *private);
int (*finish_eattr_indir) (struct gfs2_inode *ip, int leaf_pointers,
int leaf_pointer_errors, void *private);
void (*big_file_msg) (struct gfs2_inode *ip, uint64_t blks_checked);
diff --git a/gfs2/fsck/pass1.c b/gfs2/fsck/pass1.c
index 69c88f4..0909873 100644
--- a/gfs2/fsck/pass1.c
+++ b/gfs2/fsck/pass1.c
@@ -100,7 +100,6 @@ struct metawalk_fxns pass1_fxns = {
.check_dentry = NULL,
.check_eattr_entry = check_eattr_entries,
.check_eattr_extentry = check_extended_leaf_eattr,
- .check_i_goal = check_i_goal,
.finish_eattr_indir = finish_eattr_indir,
.big_file_msg = big_file_comfort,
.repair_leaf = pass1_repair_leaf,
@@ -1205,12 +1204,37 @@ bad_dinode:
return -1;
}
+static void check_i_goal(struct gfs2_sbd *sdp, struct gfs2_inode *ip)
+{
+ if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM)
+ return;
+
+ if (ip->i_di.di_goal_meta <= sdp->sb_addr ||
+ ip->i_di.di_goal_meta > sdp->fssize) {
+ log_err(_("Inode #%llu (0x%llx): Bad allocation goal block "
+ "found: %llu (0x%llx)\n"),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_goal_meta,
+ (unsigned long long)ip->i_di.di_goal_meta);
+ if (query( _("Fix goal block in inode #%llu (0x%llx)? (y/n) "),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr)) {
+ ip->i_di.di_goal_meta = ip->i_di.di_num.no_addr;
+ bmodified(ip->i_bh);
+ } else
+ log_err(_("Allocation goal block in inode #%lld "
+ "(0x%llx) not fixed\n"),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr);
+ }
+}
+
/*
* handle_di - This is now a wrapper function that takes a gfs2_buffer_head
* and calls handle_ip, which takes an in-code dinode structure.
*/
-static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh,
- struct rgrp_tree *rgd)
+static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh)
{
int error = 0;
uint64_t block = bh->b_blocknr;
@@ -1252,7 +1276,7 @@ static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh,
(unsigned long long)block,
(unsigned long long)block);
}
- ip->i_rgd = rgd;
+ check_i_goal(sdp, ip);
error = handle_ip(sdp, ip);
fsck_inode_put(&ip);
return error;
@@ -1378,6 +1402,7 @@ static int check_system_inode(struct gfs2_sbd *sdp,
"directory entries.\n"), filename);
}
}
+ check_i_goal(sdp, *sysinode);
error = handle_ip(sdp, *sysinode);
return error ? error : err;
}
@@ -1602,7 +1627,7 @@ static int pass1_process_bitmap(struct gfs2_sbd *sdp, struct rgrp_tree *rgd, uin
(unsigned long long)block,
(unsigned long long)block);
check_n_fix_bitmap(sdp, block, 0, GFS2_BLKST_FREE);
- } else if (handle_di(sdp, bh, rgd) < 0) {
+ } else if (handle_di(sdp, bh) < 0) {
stack;
brelse(bh);
gfs2_special_free(&gfs1_rindex_blks);
diff --git a/gfs2/libgfs2/libgfs2.h b/gfs2/libgfs2/libgfs2.h
index f1f81d3..ccae721 100644
--- a/gfs2/libgfs2/libgfs2.h
+++ b/gfs2/libgfs2/libgfs2.h
@@ -233,7 +233,6 @@ struct gfs2_inode {
struct gfs2_dinode i_di;
struct gfs2_buffer_head *i_bh;
struct gfs2_sbd *i_sbd;
- struct rgrp_tree *i_rgd; /* The rgrp this inode is in */
};
struct master_dir
9 years, 1 month
gfs2-utils: master - fsck.gfs2: replace recent i_goal fixes with simple logic
by Abhijith Das
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=f1028ec0...
Commit: f1028ec054f2d7f85a449b2bf0894e0435c01d6a
Parent: 68b368b8c3cc168926820be922016bf2e40d51f5
Author: Abhi Das <adas(a)redhat.com>
AuthorDate: Tue Apr 14 19:51:55 2015 -0500
Committer: Abhi Das <adas(a)redhat.com>
CommitterDate: Tue Apr 14 19:51:55 2015 -0500
fsck.gfs2: replace recent i_goal fixes with simple logic
This patch reverses the recent set of i_goal fixes for fsck.gfs2.
This is because of two problems.
1. It is not possible to determine if a valid block within the fs
is the correct goal block for a given inode.
2. Conversely, given an inode, it is also not possible to accurately
determine what its goal block should be.
The previous patches assumed that the last block of a file is its
goal block, but that is not true if the file is a directory or if
its blocks are not allocated sequentially. fsck.gfs2 would flag
these inodes incorrectly as having bad i_goal values.
This patch takes a simple approach. It checks if the i_goal of a
given inode is out of bounds of the fs. If so, we can be certain
that it is wrong and we set it to the inode metadata block. This
is a safe starting point for gfs2 to determine where to allocate
from next.
Resolves: rhbz#1186515
Signed-off-by: Abhi Das <adas(a)redhat.com>
---
gfs2/fsck/metawalk.c | 92 ++---------------------------------------------
gfs2/fsck/metawalk.h | 5 ---
gfs2/fsck/pass1.c | 35 +++++++++++++++---
gfs2/libgfs2/libgfs2.h | 1 -
4 files changed, 34 insertions(+), 99 deletions(-)
diff --git a/gfs2/fsck/metawalk.c b/gfs2/fsck/metawalk.c
index f05fb51..4d5a660 100644
--- a/gfs2/fsck/metawalk.c
+++ b/gfs2/fsck/metawalk.c
@@ -1428,8 +1428,7 @@ static int build_and_check_metalist(struct gfs2_inode *ip, osi_list_t *mlp,
*/
static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass,
struct gfs2_buffer_head *bh, int head_size,
- uint64_t *last_block, uint64_t *blks_checked,
- uint64_t *error_blk)
+ uint64_t *blks_checked, uint64_t *error_blk)
{
int error = 0, rc = 0;
uint64_t block, *ptr;
@@ -1444,7 +1443,7 @@ static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass,
if (skip_this_pass || fsck_abort)
return error;
- *last_block = block = be64_to_cpu(*ptr);
+ block = be64_to_cpu(*ptr);
/* It's important that we don't call valid_block() and
bypass calling check_data on invalid blocks because that
would defeat the rangecheck_block related functions in
@@ -1548,15 +1547,12 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
struct gfs2_buffer_head *bh;
uint32_t height = ip->i_di.di_height;
int i, head_size;
- uint64_t blks_checked = 0, last_block = 0;
+ uint64_t blks_checked = 0;
int error, rc;
int metadata_clean = 0;
uint64_t error_blk = 0;
int hit_error_blk = 0;
- if (!height && pass->check_i_goal)
- pass->check_i_goal(ip, ip->i_di.di_num.no_addr,
- pass->private);
if (!height && !is_dir(&ip->i_di, ip->i_sbd->gfs1))
return 0;
@@ -1575,9 +1571,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
* comprise the directory hash table, so we perform the directory
* checks and exit. */
if (is_dir(&ip->i_di, ip->i_sbd->gfs1)) {
- last_block = ip->i_di.di_num.no_addr;
- if (pass->check_i_goal)
- pass->check_i_goal(ip, last_block, pass->private);
if (!(ip->i_di.di_flags & GFS2_DIF_EXHASH))
goto out;
/* check validity of leaf blocks and leaf chains */
@@ -1604,7 +1597,7 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
if (pass->check_data)
error = check_data(ip, pass, bh, head_size,
- &last_block, &blks_checked, &error_blk);
+ &blks_checked, &error_blk);
if (pass->big_file_msg && ip->i_di.di_blocks > COMFORTABLE_BLKS)
pass->big_file_msg(ip, blks_checked);
}
@@ -1616,8 +1609,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass)
(unsigned long long)ip->i_di.di_num.no_addr);
fflush(stdout);
}
- if (!error && pass->check_i_goal)
- pass->check_i_goal(ip, last_block, pass->private);
undo_metalist:
if (!error)
goto out;
@@ -1958,80 +1949,6 @@ static int alloc_leaf(struct gfs2_inode *ip, uint64_t block, void *private)
return 0;
}
-/**
- * rgrp_contains_block - Check if the rgrp provided contains the
- * given block. Taken directly from the gfs2 kernel code
- * @rgd: The rgrp to search within
- * @block: The block to search for
- *
- * Returns: 1 if present, 0 if not.
- */
-static inline int rgrp_contains_block(struct rgrp_tree *rgd, uint64_t block)
-{
- uint64_t first = rgd->ri.ri_data0;
- uint64_t last = first + rgd->ri.ri_data;
- return first <= block && block < last;
-}
-
-/**
- * check_i_goal
- * @ip
- * @goal_blk: What the goal block should be for this inode
- *
- * The goal block for a regular file is typically the last
- * data block of the file. If we can't get the right value,
- * the inode metadata block is the next best thing.
- *
- * Returns: 0 if corrected, 1 if not corrected
- */
-int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk,
- void *private)
-{
- struct gfs2_sbd *sdp = ip->i_sbd;
- uint64_t i_block = ip->i_di.di_num.no_addr;
-
- /* Don't fix gfs1 inodes, system inodes or inodes whose goal blocks are
- * set to the inode blocks themselves. */
- if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM ||
- ip->i_di.di_goal_meta == i_block)
- return 0;
- /* Don't fix directory goal blocks unless we know they're wrong.
- * i.e. out of bounds of the fs. Directories can easily have blocks
- * outside of the dinode's rgrp and thus we have no way of knowing
- * if the goal block is bogus or not. */
- if (is_dir(&ip->i_di, ip->i_sbd->gfs1) &&
- (ip->i_di.di_goal_meta > sdp->sb_addr &&
- ip->i_di.di_goal_meta <= sdp->fssize))
- return 0;
- /* We default to the inode block */
- if (!goal_blk)
- goal_blk = i_block;
-
- if (ip->i_di.di_goal_meta != goal_blk) {
- /* If the existing goal block is in the same rgrp as the inode,
- * we give the benefit of doubt and assume the value is correct */
- if (ip->i_rgd &&
- rgrp_contains_block(ip->i_rgd, ip->i_di.di_goal_meta))
- goto skip;
- log_err( _("Error: inode %llu (0x%llx) has invalid "
- "allocation goal block %llu (0x%llx). Should"
- " be %llu (0x%llx)\n"),
- (unsigned long long)i_block, (unsigned long long)i_block,
- (unsigned long long)ip->i_di.di_goal_meta,
- (unsigned long long)ip->i_di.di_goal_meta,
- (unsigned long long)goal_blk, (unsigned long long)goal_blk);
- if (query( _("Fix the invalid goal block? (y/n) "))) {
- ip->i_di.di_goal_meta = ip->i_di.di_goal_data = goal_blk;
- bmodified(ip->i_bh);
- } else {
- log_err(_("Invalid goal block not fixed.\n"));
- return 1;
- }
- }
-skip:
- return 0;
-}
-
struct metawalk_fxns alloc_fxns = {
.private = NULL,
.check_leaf = alloc_leaf,
@@ -2042,7 +1959,6 @@ struct metawalk_fxns alloc_fxns = {
.check_dentry = NULL,
.check_eattr_entry = NULL,
.check_eattr_extentry = NULL,
- .check_i_goal = check_i_goal,
.finish_eattr_indir = NULL,
};
diff --git a/gfs2/fsck/metawalk.h b/gfs2/fsck/metawalk.h
index 779360e..fa4c850 100644
--- a/gfs2/fsck/metawalk.h
+++ b/gfs2/fsck/metawalk.h
@@ -50,8 +50,6 @@ extern int _fsck_blockmap_set(struct gfs2_inode *ip, uint64_t bblock,
const char *caller, int line);
extern int check_n_fix_bitmap(struct gfs2_sbd *sdp, uint64_t blk,
int error_on_dinode, int new_blockmap_state);
-extern int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk,
- void *private);
extern void reprocess_inode(struct gfs2_inode *ip, const char *desc);
extern struct duptree *dupfind(uint64_t block);
extern struct gfs2_inode *fsck_system_inode(struct gfs2_sbd *sdp,
@@ -91,7 +89,6 @@ enum meta_check_rc {
* check_dentry:
* check_eattr_entry:
* check_eattr_extentry:
- * check_i_goal:
*/
struct metawalk_fxns {
void *private;
@@ -143,8 +140,6 @@ struct metawalk_fxns {
struct gfs2_ea_header *ea_hdr,
struct gfs2_ea_header *ea_hdr_prev,
void *private);
- int (*check_i_goal) (struct gfs2_inode *ip, uint64_t goal_blk,
- void *private);
int (*finish_eattr_indir) (struct gfs2_inode *ip, int leaf_pointers,
int leaf_pointer_errors, void *private);
void (*big_file_msg) (struct gfs2_inode *ip, uint64_t blks_checked);
diff --git a/gfs2/fsck/pass1.c b/gfs2/fsck/pass1.c
index 69c88f4..0909873 100644
--- a/gfs2/fsck/pass1.c
+++ b/gfs2/fsck/pass1.c
@@ -100,7 +100,6 @@ struct metawalk_fxns pass1_fxns = {
.check_dentry = NULL,
.check_eattr_entry = check_eattr_entries,
.check_eattr_extentry = check_extended_leaf_eattr,
- .check_i_goal = check_i_goal,
.finish_eattr_indir = finish_eattr_indir,
.big_file_msg = big_file_comfort,
.repair_leaf = pass1_repair_leaf,
@@ -1205,12 +1204,37 @@ bad_dinode:
return -1;
}
+static void check_i_goal(struct gfs2_sbd *sdp, struct gfs2_inode *ip)
+{
+ if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM)
+ return;
+
+ if (ip->i_di.di_goal_meta <= sdp->sb_addr ||
+ ip->i_di.di_goal_meta > sdp->fssize) {
+ log_err(_("Inode #%llu (0x%llx): Bad allocation goal block "
+ "found: %llu (0x%llx)\n"),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_goal_meta,
+ (unsigned long long)ip->i_di.di_goal_meta);
+ if (query( _("Fix goal block in inode #%llu (0x%llx)? (y/n) "),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr)) {
+ ip->i_di.di_goal_meta = ip->i_di.di_num.no_addr;
+ bmodified(ip->i_bh);
+ } else
+ log_err(_("Allocation goal block in inode #%lld "
+ "(0x%llx) not fixed\n"),
+ (unsigned long long)ip->i_di.di_num.no_addr,
+ (unsigned long long)ip->i_di.di_num.no_addr);
+ }
+}
+
/*
* handle_di - This is now a wrapper function that takes a gfs2_buffer_head
* and calls handle_ip, which takes an in-code dinode structure.
*/
-static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh,
- struct rgrp_tree *rgd)
+static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh)
{
int error = 0;
uint64_t block = bh->b_blocknr;
@@ -1252,7 +1276,7 @@ static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh,
(unsigned long long)block,
(unsigned long long)block);
}
- ip->i_rgd = rgd;
+ check_i_goal(sdp, ip);
error = handle_ip(sdp, ip);
fsck_inode_put(&ip);
return error;
@@ -1378,6 +1402,7 @@ static int check_system_inode(struct gfs2_sbd *sdp,
"directory entries.\n"), filename);
}
}
+ check_i_goal(sdp, *sysinode);
error = handle_ip(sdp, *sysinode);
return error ? error : err;
}
@@ -1602,7 +1627,7 @@ static int pass1_process_bitmap(struct gfs2_sbd *sdp, struct rgrp_tree *rgd, uin
(unsigned long long)block,
(unsigned long long)block);
check_n_fix_bitmap(sdp, block, 0, GFS2_BLKST_FREE);
- } else if (handle_di(sdp, bh, rgd) < 0) {
+ } else if (handle_di(sdp, bh) < 0) {
stack;
brelse(bh);
gfs2_special_free(&gfs1_rindex_blks);
diff --git a/gfs2/libgfs2/libgfs2.h b/gfs2/libgfs2/libgfs2.h
index f1f81d3..ccae721 100644
--- a/gfs2/libgfs2/libgfs2.h
+++ b/gfs2/libgfs2/libgfs2.h
@@ -233,7 +233,6 @@ struct gfs2_inode {
struct gfs2_dinode i_di;
struct gfs2_buffer_head *i_bh;
struct gfs2_sbd *i_sbd;
- struct rgrp_tree *i_rgd; /* The rgrp this inode is in */
};
struct master_dir
9 years, 1 month
dlm: master - dlm_controld: don't log error from cpg_dispatch
by David Teigland
Gitweb: http://git.fedorahosted.org/git/?p=dlm.git;a=commitdiff;h=b5b06ccf564cd33...
Commit: b5b06ccf564cd339b91526c13be1dd86d06c1a93
Parent: 34253e1a45d7f1b1bd91de30d32bb13d34cd2464
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Mon Apr 13 11:00:40 2015 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Mon Apr 13 11:00:40 2015 -0500
dlm_controld: don't log error from cpg_dispatch
These errors from cpg_dispatch are expected.
Signed-off-by: David Teigland <teigland(a)redhat.com>
---
dlm_controld/cpg.c | 2 +-
dlm_controld/daemon_cpg.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlm_controld/cpg.c b/dlm_controld/cpg.c
index f971158..b23a008 100644
--- a/dlm_controld/cpg.c
+++ b/dlm_controld/cpg.c
@@ -1664,7 +1664,7 @@ static void process_cpg_lockspace(int ci)
}
error = cpg_dispatch(ls->cpg_handle, CS_DISPATCH_ALL);
- if (error != CS_OK) {
+ if (error != CS_OK && error != CS_ERR_BAD_HANDLE) {
log_error("cpg_dispatch error %d", error);
return;
}
diff --git a/dlm_controld/daemon_cpg.c b/dlm_controld/daemon_cpg.c
index d88cd46..356e80d 100644
--- a/dlm_controld/daemon_cpg.c
+++ b/dlm_controld/daemon_cpg.c
@@ -1871,7 +1871,7 @@ int set_protocol(void)
*/
error = cpg_dispatch(cpg_handle_daemon, CS_DISPATCH_ONE);
- if (error != CS_OK)
+ if (error != CS_OK && error != CS_ERR_BAD_HANDLE)
log_error("daemon cpg_dispatch one error %d", error);
}
if (pollfd.revents & (POLLERR | POLLHUP | POLLNVAL)) {
@@ -2181,7 +2181,7 @@ void process_cpg_daemon(int ci)
cs_error_t error;
error = cpg_dispatch(cpg_handle_daemon, CS_DISPATCH_ALL);
- if (error != CS_OK)
+ if (error != CS_OK && error != CS_ERR_BAD_HANDLE)
log_error("daemon cpg_dispatch error %d", error);
}
9 years, 1 month
gfs2-utils: RHEL7 - gfs2_grow: Put back the definition of FALLOC_FL_KEEP_SIZE
by Andrew Price
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=be3383e4...
Commit: be3383e4f295c0d519c811ac9ace6bbbfa5f58e3
Parent: 34defaf57b621dbe4b0b6eb4940fd15ae524a845
Author: Andrew Price <anprice(a)redhat.com>
AuthorDate: Tue Apr 7 12:00:08 2015 +0100
Committer: Andrew Price <anprice(a)redhat.com>
CommitterDate: Tue Apr 7 19:36:30 2015 +0100
gfs2_grow: Put back the definition of FALLOC_FL_KEEP_SIZE
An #include <linux/falloc.h> was removed in commit 14193bb. Although
fallocate(2) support was added to glibc 2.10, the FALLOC_FL_*
definitions were not added until 2.18. This means that gfs2-utils failed
to build on RHEL7 which has glibc 2.17. Add back the FALLOC_FL_KEEP_SIZE
definition in main_grow.c to fix that.
Signed-off-by: Andrew Price <anprice(a)redhat.com>
---
gfs2/mkfs/main_grow.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/gfs2/mkfs/main_grow.c b/gfs2/mkfs/main_grow.c
index cc32585..4757ac7 100644
--- a/gfs2/mkfs/main_grow.c
+++ b/gfs2/mkfs/main_grow.c
@@ -38,6 +38,9 @@ int print_level = MSG_NOTICE;
extern int create_new_inode(struct gfs2_sbd *sdp);
extern int rename2system(struct gfs2_sbd *sdp, char *new_dir, char *new_name);
+#ifndef FALLOC_FL_KEEP_SIZE
+#define FALLOC_FL_KEEP_SIZE 0x01
+#endif
#ifndef BLKDISCARD
#define BLKDISCARD _IO(0x12,119)
#endif
9 years, 1 month
gfs2-utils: RHEL7 - libgfs2: Fix potential NULL deref in linked_leaf_search()
by Andrew Price
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=34defaf5...
Commit: 34defaf57b621dbe4b0b6eb4940fd15ae524a845
Parent: 3b97780fa8794e0010d0c848eba928f9045bb8db
Author: Andrew Price <anprice(a)redhat.com>
AuthorDate: Fri Apr 3 00:35:01 2015 +0100
Committer: Andrew Price <anprice(a)redhat.com>
CommitterDate: Tue Apr 7 19:36:30 2015 +0100
libgfs2: Fix potential NULL deref in linked_leaf_search()
Spotted by coverity: "Null-checking "bh" suggests that it may be null,
but it has already been dereferenced on all paths leading to the check."
Also remove some dangling whitespace from that function.
Signed-off-by: Andrew Price <anprice(a)redhat.com>
---
gfs2/libgfs2/fs_ops.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/gfs2/libgfs2/fs_ops.c b/gfs2/libgfs2/fs_ops.c
index b84b7f4..2ae27d1 100644
--- a/gfs2/libgfs2/fs_ops.c
+++ b/gfs2/libgfs2/fs_ops.c
@@ -1669,22 +1669,22 @@ static int linked_leaf_search(struct gfs2_inode *dip, const char *filename,
case 0:
*bh_out = bh;
return 0;
-
+
case -ENOENT:
break;
-
+
default:
if (bh && bh != dip->i_bh)
brelse(bh);
return error;
}
-
+
error = get_next_leaf(dip, bh, &bh_next);
- } while (!error);
-
+ } while (!error && bh_next != NULL);
+
if (bh && bh != dip->i_bh)
brelse(bh);
-
+
return error;
}
9 years, 1 month
gfs2-utils: RHEL7 - gfs2-utils: Update translation template
by Andrew Price
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=3b97780f...
Commit: 3b97780fa8794e0010d0c848eba928f9045bb8db
Parent: 196a5a3920f9b0434fd7066b8954dbfdbc84a0fd
Author: Andrew Price <anprice(a)redhat.com>
AuthorDate: Thu Apr 2 16:29:49 2015 +0100
Committer: Andrew Price <anprice(a)redhat.com>
CommitterDate: Tue Apr 7 19:36:30 2015 +0100
gfs2-utils: Update translation template
Also add metafs.c to the list of translated files.
Signed-off-by: Andrew Price <anprice(a)redhat.com>
---
po/POTFILES.in | 1 +
po/gfs2-utils.pot | 2175 ++++++++++++++++++++++++++++-------------------------
2 files changed, 1166 insertions(+), 1010 deletions(-)
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0e5f57e..b6cc15b 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -2,6 +2,7 @@ gfs2/mkfs/main_mkfs.c
gfs2/mkfs/gfs2_mkfs.h
gfs2/mkfs/main_grow.c
gfs2/mkfs/main_jadd.c
+gfs2/mkfs/metafs.c
gfs2/tune/main.c
gfs2/tune/super.c
gfs2/tune/tunegfs2.h
diff --git a/po/gfs2-utils.pot b/po/gfs2-utils.pot
index edecdea..4bf21bf 100644
--- a/po/gfs2-utils.pot
+++ b/po/gfs2-utils.pot
@@ -1,13 +1,14 @@
-# Translation template for gfs2-utils.
+# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Red Hat, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: gfs2-utils master\n"
"Report-Msgid-Bugs-To: linux-cluster(a)redhat.com\n"
-"POT-Creation-Date: 2014-09-05 12:22+0100\n"
+"POT-Creation-Date: 2015-04-02 16:28+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL(a)li.org>\n"
@@ -17,231 +18,231 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#. Translators: This is a usage string printed with --help.
-#. <size> and <number> here are to commandline parameters,
+#. <size> and <number> here are the commandline parameters,
#. e.g. mkfs.gfs2 -b <size> -j <number> /dev/sda
-#: gfs2/mkfs/main_mkfs.c:52 gfs2/mkfs/main_mkfs.c:53 gfs2/mkfs/main_mkfs.c:56
-#: gfs2/mkfs/main_mkfs.c:63
+#: gfs2/mkfs/main_mkfs.c:40 gfs2/mkfs/main_mkfs.c:41 gfs2/mkfs/main_mkfs.c:44
+#: gfs2/mkfs/main_mkfs.c:51
msgid "<size>"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:52
+#: gfs2/mkfs/main_mkfs.c:40
msgid "File system block size, in bytes"
msgstr ""
#. Translators: This is a usage string printed with --help.
-#. <size> and <number> here are to commandline parameters,
+#. <size> and <number> here are the commandline parameters,
#. e.g. gfs2_jadd -j <number> /dev/sda
-#: gfs2/mkfs/main_mkfs.c:53 gfs2/mkfs/main_jadd.c:88
+#: gfs2/mkfs/main_mkfs.c:41 gfs2/mkfs/main_jadd.c:120
msgid "Size of quota change file, in megabytes"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:54 gfs2/mkfs/main_jadd.c:89
+#: gfs2/mkfs/main_mkfs.c:42 gfs2/mkfs/main_jadd.c:121
msgid "Enable debugging code"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:55 gfs2/mkfs/main_mkfs.c:87 gfs2/mkfs/main_jadd.c:90
+#: gfs2/mkfs/main_mkfs.c:43 gfs2/mkfs/main_mkfs.c:75 gfs2/mkfs/main_jadd.c:122
msgid "Display this help, then exit"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:56 gfs2/mkfs/main_jadd.c:91
+#: gfs2/mkfs/main_mkfs.c:44 gfs2/mkfs/main_jadd.c:123
msgid "Size of journals, in megabytes"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:57
+#: gfs2/mkfs/main_mkfs.c:45
msgid "<number>"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:57 gfs2/mkfs/main_jadd.c:92
+#: gfs2/mkfs/main_mkfs.c:45 gfs2/mkfs/main_jadd.c:124
msgid "Number of journals"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:58
+#: gfs2/mkfs/main_mkfs.c:46
msgid "Don't try to discard unused blocks"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:59
+#: gfs2/mkfs/main_mkfs.c:47
msgid "Don't ask for confirmation"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:60
+#: gfs2/mkfs/main_mkfs.c:48
msgid "<key>[=<value>][,...]"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:60
+#: gfs2/mkfs/main_mkfs.c:48
msgid "Specify extended options. See '-o help'."
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:61 gfs2/mkfs/main_mkfs.c:64
+#: gfs2/mkfs/main_mkfs.c:49 gfs2/mkfs/main_mkfs.c:52
msgid "<name>"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:61
+#: gfs2/mkfs/main_mkfs.c:49
msgid "Name of the locking protocol"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:62 gfs2/mkfs/main_jadd.c:93
+#: gfs2/mkfs/main_mkfs.c:50 gfs2/mkfs/main_jadd.c:125
msgid "Don't print anything"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:63
+#: gfs2/mkfs/main_mkfs.c:51
msgid "Size of resource groups, in megabytes"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:64
+#: gfs2/mkfs/main_mkfs.c:52
msgid "Name of the lock table"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:65
+#: gfs2/mkfs/main_mkfs.c:53
msgid "Display program version information, then exit"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:69 gfs2/mkfs/main_grow.c:78 gfs2/mkfs/main_jadd.c:98
+#: gfs2/mkfs/main_mkfs.c:57 gfs2/mkfs/main_grow.c:77 gfs2/mkfs/main_jadd.c:130
#: gfs2/tune/main.c:56
msgid "Usage:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:70 gfs2/mkfs/main_grow.c:79 gfs2/mkfs/main_jadd.c:99
+#: gfs2/mkfs/main_mkfs.c:58 gfs2/mkfs/main_grow.c:78 gfs2/mkfs/main_jadd.c:131
msgid "options"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:70 gfs2/mkfs/main_grow.c:79 gfs2/mkfs/main_jadd.c:99
+#: gfs2/mkfs/main_mkfs.c:58 gfs2/mkfs/main_grow.c:78 gfs2/mkfs/main_jadd.c:131
#: gfs2/tune/main.c:57
msgid "device"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:70
+#: gfs2/mkfs/main_mkfs.c:58
msgid "size"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:71
+#: gfs2/mkfs/main_mkfs.c:59
#, c-format
msgid ""
"Create a gfs2 file system on a device. If a size, in blocks, is not "
"specified, the whole device will be used."
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:73 gfs2/mkfs/main_grow.c:81 gfs2/mkfs/main_jadd.c:101
+#: gfs2/mkfs/main_mkfs.c:61 gfs2/mkfs/main_grow.c:80 gfs2/mkfs/main_jadd.c:133
msgid "Options:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:88
+#: gfs2/mkfs/main_mkfs.c:76
msgid "Specify the stripe width of the device, overriding probed values"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:89
+#: gfs2/mkfs/main_mkfs.c:77
msgid "Specify the stripe unit of the device, overriding probed values"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:90
+#: gfs2/mkfs/main_mkfs.c:78
msgid "Disable or enable alignment of resource groups"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:93
+#: gfs2/mkfs/main_mkfs.c:81
#, c-format
msgid "Extended options:\n"
msgstr ""
#. Translators: "discard" is a request sent to a storage device to
#. * discard a range of blocks.
-#: gfs2/mkfs/main_mkfs.c:184
+#: gfs2/mkfs/main_mkfs.c:172
#, c-format
msgid "Issuing discard request: range: %llu - %llu..."
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:189
+#: gfs2/mkfs/main_mkfs.c:177
msgid "error"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:193
+#: gfs2/mkfs/main_mkfs.c:181
#, c-format
msgid "Successful.\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:216
+#: gfs2/mkfs/main_mkfs.c:204
#, c-format
msgid "Block size not available yet.\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:243
+#: gfs2/mkfs/main_mkfs.c:231
#, c-format
msgid "Missing argument to '%s'\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:248
+#: gfs2/mkfs/main_mkfs.c:236
#, c-format
msgid "Value of '%s' is invalid\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:262
+#: gfs2/mkfs/main_mkfs.c:250
#, c-format
msgid "Option '%s' must be either 1 or 0\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:273
+#: gfs2/mkfs/main_mkfs.c:261
#, c-format
msgid "Missing argument to '-o' option\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:288
+#: gfs2/mkfs/main_mkfs.c:276
#, c-format
msgid "Invalid option '%s'\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:358 gfs2/mkfs/main_grow.c:123
-#: gfs2/mkfs/main_jadd.c:156 gfs2/fsck/main.c:110 gfs2/fsck/main.c:121
+#: gfs2/mkfs/main_mkfs.c:346 gfs2/mkfs/main_grow.c:122
+#: gfs2/mkfs/main_jadd.c:188 gfs2/fsck/main.c:110 gfs2/fsck/main.c:121
#, c-format
msgid "Please use '-h' for help.\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:371
+#: gfs2/mkfs/main_mkfs.c:359
msgid "More than one device specified (try -h for help)\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:374 gfs2/mkfs/main_jadd.c:163 gfs2/tune/main.c:93
+#: gfs2/mkfs/main_mkfs.c:362 gfs2/mkfs/main_jadd.c:195 gfs2/tune/main.c:93
#, c-format
msgid "Invalid option: %c\n"
msgstr ""
#. Translators: A lock table is a string identifying a gfs2 file system
#. * in a cluster, e.g. cluster_name:fs_name
-#: gfs2/mkfs/main_mkfs.c:392 gfs2/tune/super.c:184
+#: gfs2/mkfs/main_mkfs.c:380 gfs2/tune/super.c:184
msgid "Invalid lock table:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:399
+#: gfs2/mkfs/main_mkfs.c:387
#, c-format
msgid "No lock table specified.\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:404
+#: gfs2/mkfs/main_mkfs.c:392
msgid "invalid character"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:409 gfs2/tune/super.c:194
+#: gfs2/mkfs/main_mkfs.c:397 gfs2/tune/super.c:194
msgid "missing colon"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:412
+#: gfs2/mkfs/main_mkfs.c:400
msgid "cluster name is missing"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:414
+#: gfs2/mkfs/main_mkfs.c:402
msgid "cluster name is too long"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:418 gfs2/tune/super.c:202
+#: gfs2/mkfs/main_mkfs.c:406 gfs2/tune/super.c:202
msgid "contains more than one colon"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:420
+#: gfs2/mkfs/main_mkfs.c:408
msgid "file system name is missing"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:422 gfs2/tune/super.c:198
+#: gfs2/mkfs/main_mkfs.c:410 gfs2/tune/super.c:198
msgid "file system name is too long"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:424 gfs2/tune/super.c:168 gfs2/tune/super.c:174
+#: gfs2/mkfs/main_mkfs.c:412 gfs2/tune/super.c:168 gfs2/tune/super.c:174
#, c-format
msgid "Invalid lock protocol: %s\n"
msgstr ""
@@ -251,443 +252,468 @@ msgstr ""
#. translated to match one of the letters in the pattern printed by
#. `locale -k yesexpr` and one of the letters in the pattern printed by
#. `locale -k noexpr`
-#: gfs2/mkfs/main_mkfs.c:441
+#: gfs2/mkfs/main_mkfs.c:429
#, c-format
msgid "Are you sure you want to proceed? [y/n]"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:451
+#: gfs2/mkfs/main_mkfs.c:439
msgid "Aborted.\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:489
+#: gfs2/mkfs/main_mkfs.c:477
#, c-format
msgid "Block size must be a power of two between 512 and %d\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:493
+#: gfs2/mkfs/main_mkfs.c:481
#, c-format
msgid "Error: Block size %d is less than minimum logical block size (%lu).\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:498
+#: gfs2/mkfs/main_mkfs.c:486
#, c-format
msgid ""
"Warning: Block size %d is inefficient because it is less than the physical "
"block size (%lu).\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:509
+#: gfs2/mkfs/main_mkfs.c:497
#, c-format
msgid "No device specified. Use -h for help\n"
msgstr ""
#. Translators: gfs2 file systems are split into equal sized chunks called
#. resource groups. We're checking that the user gave a valid size for them.
-#: gfs2/mkfs/main_mkfs.c:518
+#: gfs2/mkfs/main_mkfs.c:506
msgid "bad resource group size\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:521 gfs2/mkfs/main_jadd.c:190
+#: gfs2/mkfs/main_mkfs.c:509 gfs2/mkfs/main_jadd.c:222
msgid "no journals specified\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:524 gfs2/mkfs/main_jadd.c:192
+#: gfs2/mkfs/main_mkfs.c:512 gfs2/mkfs/main_jadd.c:224
msgid "bad journal size\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:527 gfs2/mkfs/main_jadd.c:194
+#: gfs2/mkfs/main_mkfs.c:515 gfs2/mkfs/main_jadd.c:226
msgid "bad quota change size\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:530
+#: gfs2/mkfs/main_mkfs.c:518
#, c-format
msgid "Stripe unit and stripe width must be specified together\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:537 gfs2/mkfs/main_grow.c:313
+#: gfs2/mkfs/main_mkfs.c:525 gfs2/mkfs/main_grow.c:311
msgid "Device:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:538
+#: gfs2/mkfs/main_mkfs.c:526
msgid "Block size:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:539 gfs2/mkfs/main_mkfs.c:783
+#: gfs2/mkfs/main_mkfs.c:527 gfs2/mkfs/main_mkfs.c:771
msgid "Device size:"
msgstr ""
#. Translators: "GB" here means "gigabytes"
-#: gfs2/mkfs/main_mkfs.c:541 gfs2/mkfs/main_mkfs.c:544
-#: gfs2/mkfs/main_mkfs.c:784
+#: gfs2/mkfs/main_mkfs.c:529 gfs2/mkfs/main_mkfs.c:532
+#: gfs2/mkfs/main_mkfs.c:772
msgid "GB"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:542 gfs2/mkfs/main_mkfs.c:544
-#: gfs2/mkfs/main_mkfs.c:785
+#: gfs2/mkfs/main_mkfs.c:530 gfs2/mkfs/main_mkfs.c:532
+#: gfs2/mkfs/main_mkfs.c:773
msgid "blocks"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:543
+#: gfs2/mkfs/main_mkfs.c:531
msgid "Filesystem size:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:545
+#: gfs2/mkfs/main_mkfs.c:533
msgid "Journals:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:546
+#: gfs2/mkfs/main_mkfs.c:534
msgid "Resource groups:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:547
+#: gfs2/mkfs/main_mkfs.c:535
msgid "Locking protocol:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:548
+#: gfs2/mkfs/main_mkfs.c:536
msgid "Lock table:"
msgstr ""
#. Translators: "UUID" = universally unique identifier.
-#: gfs2/mkfs/main_mkfs.c:551
+#: gfs2/mkfs/main_mkfs.c:539
msgid "UUID:"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:561
+#: gfs2/mkfs/main_mkfs.c:549
msgid "Failed to lstat the device"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:567
+#: gfs2/mkfs/main_mkfs.c:555
msgid "Could not find the absolute path of the device"
msgstr ""
#. Translators: Example: "/dev/vg/lv is a symbolic link to /dev/dm-2"
-#: gfs2/mkfs/main_mkfs.c:571
+#: gfs2/mkfs/main_mkfs.c:559
#, c-format
msgid "%s is a symbolic link to %s\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:574
+#: gfs2/mkfs/main_mkfs.c:562
#, c-format
msgid "This will destroy any data on %s\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:586
+#: gfs2/mkfs/main_mkfs.c:574
#, c-format
msgid "Stripe unit (%lu) must be a multiple of block size (%u)\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:590
+#: gfs2/mkfs/main_mkfs.c:578
#, c-format
msgid "Stripe width (%lu) must be a multiple of stripe unit (%lu)\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:607 gfs2/mkfs/main_grow.c:398
+#: gfs2/mkfs/main_mkfs.c:595 gfs2/mkfs/main_grow.c:414
msgid "Could not initialise resource groups"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:629 gfs2/mkfs/main_grow.c:224
+#: gfs2/mkfs/main_mkfs.c:617 gfs2/mkfs/main_grow.c:223
msgid "Failed to write resource group"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:651
+#: gfs2/mkfs/main_mkfs.c:639
msgid "Failed to create resource group index entry"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:660 gfs2/mkfs/main_grow.c:216
+#: gfs2/mkfs/main_mkfs.c:648 gfs2/mkfs/main_grow.c:215
msgid "Failed to create resource group"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:684
+#: gfs2/mkfs/main_mkfs.c:672
#, c-format
msgid "Placing resource group for journal%u\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:694
+#: gfs2/mkfs/main_mkfs.c:682
msgid "Failed to allocate space for bitmap buffer"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:704
+#: gfs2/mkfs/main_mkfs.c:692
#, c-format
msgid "Failed to allocate space for journal %u\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:719
+#: gfs2/mkfs/main_mkfs.c:707
#, c-format
msgid "Failed to write journal %u\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:725
+#: gfs2/mkfs/main_mkfs.c:713
#, c-format
msgid "Failed to write data blocks for journal %u\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:756 gfs2/mkfs/main_mkfs.c:920
-#: gfs2/fsck/rgrepair.c:636
+#: gfs2/mkfs/main_mkfs.c:744 gfs2/mkfs/main_mkfs.c:912
+#: gfs2/fsck/rgrepair.c:754
#, c-format
msgid "Failed to build resource groups\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:776
+#: gfs2/mkfs/main_mkfs.c:764 gfs2/mkfs/main_grow.c:384
+#: gfs2/mkfs/main_jadd.c:534 gfs2/convert/gfs2_convert.c:1580
+#: gfs2/convert/gfs2_convert.c:1602 gfs2/convert/gfs2_convert.c:1608
+#: gfs2/convert/gfs2_convert.c:1619 gfs2/convert/gfs2_convert.c:1625
+#: gfs2/convert/gfs2_convert.c:2257 gfs2/fsck/initialize.c:1304
msgid "Failed to compute file system constants"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:782
+#: gfs2/mkfs/main_mkfs.c:770
#, c-format
msgid "Specified size is bigger than the device."
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:800 gfs2/mkfs/main_mkfs.c:805
-#: gfs2/mkfs/main_grow.c:149 gfs2/mkfs/main_grow.c:160
+#: gfs2/mkfs/main_mkfs.c:788 gfs2/mkfs/main_mkfs.c:793
+#: gfs2/mkfs/main_grow.c:148 gfs2/mkfs/main_grow.c:159
#, c-format
msgid "Failed to create probe\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:811
+#: gfs2/mkfs/main_mkfs.c:799
#, c-format
msgid "Failed to probe device\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:819
+#: gfs2/mkfs/main_mkfs.c:807
#, c-format
msgid "It appears to contain an existing filesystem (%s)\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:821
+#: gfs2/mkfs/main_mkfs.c:809
#, c-format
msgid "It appears to contain a partition table (%s).\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:861
+#: gfs2/mkfs/main_mkfs.c:849
#, c-format
msgid "Device '%s' is too small\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:865
+#: gfs2/mkfs/main_mkfs.c:853
#, c-format
msgid "'%s' is not a block device or regular file\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:897
+#: gfs2/mkfs/main_mkfs.c:889
#, c-format
msgid "File system options:\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:927 gfs2/mkfs/main_mkfs.c:934
-#: gfs2/mkfs/main_mkfs.c:940 gfs2/mkfs/main_mkfs.c:945
-#: gfs2/mkfs/main_mkfs.c:951 gfs2/mkfs/main_mkfs.c:957
-#: gfs2/mkfs/main_mkfs.c:962
+#: gfs2/mkfs/main_mkfs.c:919 gfs2/mkfs/main_mkfs.c:926
+#: gfs2/mkfs/main_mkfs.c:932 gfs2/mkfs/main_mkfs.c:937
+#: gfs2/mkfs/main_mkfs.c:943 gfs2/mkfs/main_mkfs.c:949
+#: gfs2/mkfs/main_mkfs.c:954
#, c-format
msgid "Error building '%s': %s\n"
msgstr ""
-#: gfs2/mkfs/main_mkfs.c:984
+#: gfs2/mkfs/main_mkfs.c:978
msgid "Failed to write superblock\n"
msgstr ""
-#: gfs2/mkfs/main.c:51
-msgid "Unknown mode\n"
-msgstr ""
-
-#: gfs2/mkfs/main_grow.c:70
+#: gfs2/mkfs/main_grow.c:69
msgid "Display this usage information"
msgstr ""
-#: gfs2/mkfs/main_grow.c:71
+#: gfs2/mkfs/main_grow.c:70
msgid "Quiet, reduce verbosity"
msgstr ""
-#: gfs2/mkfs/main_grow.c:72
+#: gfs2/mkfs/main_grow.c:71
msgid "Do everything except update file system"
msgstr ""
-#: gfs2/mkfs/main_grow.c:73
+#: gfs2/mkfs/main_grow.c:72
msgid "Display version information"
msgstr ""
-#: gfs2/mkfs/main_grow.c:74
+#: gfs2/mkfs/main_grow.c:73
msgid "Increase verbosity"
msgstr ""
-#: gfs2/mkfs/main_grow.c:80
+#: gfs2/mkfs/main_grow.c:79
#, c-format
msgid ""
"Expands a GFS2 file system after the device containing the file system has "
"been expanded"
msgstr ""
-#: gfs2/mkfs/main_grow.c:102
+#: gfs2/mkfs/main_grow.c:101
#, c-format
msgid "%s %s (built %s %s)\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:113
+#: gfs2/mkfs/main_grow.c:112
#, c-format
msgid "(Test mode - file system will not be changed)\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:126
+#: gfs2/mkfs/main_grow.c:125
#, c-format
msgid "Invalid option '%c'\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:155
+#: gfs2/mkfs/main_grow.c:154
#, c-format
msgid "fstat failed\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:262
+#: gfs2/mkfs/main_grow.c:261
#, c-format
msgid "%d new rindex entries.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:269
+#: gfs2/mkfs/main_grow.c:268
#, c-format
msgid "Incorrect rindex size. Want %ld (%d resource groups), have %ld\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:277
+#: gfs2/mkfs/main_grow.c:276
msgid "Error writing first new rindex entry; aborted.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:285
+#: gfs2/mkfs/main_grow.c:284
msgid "Error writing new rindex entries; aborted.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:300
+#: gfs2/mkfs/main_grow.c:299
#, c-format
msgid "truncating rindex to %ld entries\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:312
+#: gfs2/mkfs/main_grow.c:310
msgid "Mount point:"
msgstr ""
-#: gfs2/mkfs/main_grow.c:314
+#: gfs2/mkfs/main_grow.c:312
msgid "Size:"
msgstr ""
-#: gfs2/mkfs/main_grow.c:316
+#: gfs2/mkfs/main_grow.c:314
msgid "New resource group size:"
msgstr ""
-#: gfs2/mkfs/main_grow.c:317
+#: gfs2/mkfs/main_grow.c:315
msgid "Length:"
msgstr ""
-#: gfs2/mkfs/main_grow.c:320
+#: gfs2/mkfs/main_grow.c:318
#, c-format
msgid "The file system will grow by %lluMB.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:349 gfs2/mkfs/main_jadd.c:502
+#: gfs2/mkfs/main_grow.c:328
+msgid "Failed to open rindex"
+msgstr ""
+
+#: gfs2/mkfs/main_grow.c:334
#, c-format
-msgid "Error looking up mount '%s': %s\n"
+msgid "Please run fsck.gfs2\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:353 gfs2/mkfs/main_jadd.c:506
+#: gfs2/mkfs/main_grow.c:369 gfs2/mkfs/main_jadd.c:514
#, c-format
-msgid "%s: not a mounted gfs2 file system\n"
+msgid "Error looking up mount '%s': %s\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:366 gfs2/mkfs/main_jadd.c:520
-msgid "Bad constants (1)"
+#: gfs2/mkfs/main_grow.c:373 gfs2/mkfs/main_jadd.c:518
+#, c-format
+msgid "%s: not a mounted gfs2 file system\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:370
+#: gfs2/mkfs/main_grow.c:388
#, c-format
msgid "Error reading superblock.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:374
+#: gfs2/mkfs/main_grow.c:392
#, c-format
msgid "cannot grow gfs1 filesystem\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:379
+#: gfs2/mkfs/main_grow.c:398
msgid "Failed to mount GFS2 meta file system"
msgstr ""
-#: gfs2/mkfs/main_grow.c:387
-msgid "GFS2 rindex not found. Please run fsck.gfs2.\n"
-msgstr ""
-
-#: gfs2/mkfs/main_grow.c:393
+#: gfs2/mkfs/main_grow.c:409
msgid "Could not read master directory"
msgstr ""
-#: gfs2/mkfs/main_grow.c:407
+#: gfs2/mkfs/main_grow.c:423
#, c-format
msgid "Gathering resource group information for %s\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:410
+#: gfs2/mkfs/main_grow.c:426
msgid "Failed to scan existing resource groups"
msgstr ""
-#: gfs2/mkfs/main_grow.c:422
+#: gfs2/mkfs/main_grow.c:438
msgid "Could not initialise new resource groups"
msgstr ""
-#: gfs2/mkfs/main_grow.c:429
+#: gfs2/mkfs/main_grow.c:445
msgid "The calculated resource group size is too small.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:430
+#: gfs2/mkfs/main_grow.c:446
#, c-format
msgid "%s has not grown.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:452
+#: gfs2/mkfs/main_grow.c:468
msgid "gfs2_grow interrupted.\n"
msgstr ""
-#: gfs2/mkfs/main_grow.c:455
+#: gfs2/mkfs/main_grow.c:471
msgid "gfs2_grow complete.\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:94
+#: gfs2/mkfs/main_jadd.c:72
+msgid "Failed to allocate new path"
+msgstr ""
+
+#: gfs2/mkfs/main_jadd.c:126
msgid "Display version information, then exit"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:100
+#: gfs2/mkfs/main_jadd.c:132
#, c-format
msgid "Adds journals to a GFS2 file system."
msgstr ""
-#: gfs2/mkfs/main_jadd.c:172
+#: gfs2/mkfs/main_jadd.c:204
msgid "no path specified (try -h for help)\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:175
+#: gfs2/mkfs/main_jadd.c:207
#, c-format
msgid "Unrecognized argument: %s\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:178
+#: gfs2/mkfs/main_jadd.c:210
#, c-format
-msgid "Command Line Arguments:\n"
+msgid "Command line arguments:\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:210
+#: gfs2/mkfs/main_jadd.c:236
#, c-format
msgid "Filesystem: %s\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:211
+#: gfs2/mkfs/main_jadd.c:237
#, c-format
-msgid "Old Journals: %u\n"
+msgid "Old journals: %u\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:212
+#: gfs2/mkfs/main_jadd.c:238
#, c-format
-msgid "New Journals: %u\n"
+msgid "New journals: %u\n"
msgstr ""
-#: gfs2/mkfs/main_jadd.c:402
+#: gfs2/mkfs/main_jadd.c:416
msgid "No journals found. Did you run mkfs.gfs2 correctly?\n"
msgstr ""
+#: gfs2/mkfs/main_jadd.c:529
+msgid "Failed to build paths"
+msgstr ""
+
+#: gfs2/mkfs/metafs.c:26
+#, c-format
+msgid "Trying to get admin lock..."
+msgstr ""
+
+#: gfs2/mkfs/metafs.c:38
+#, c-format
+msgid "locked.\n"
+msgstr ""
+
+#. Translators: the first %s here is a path, the second is an error message
+#: gfs2/mkfs/metafs.c:86
+#, c-format
+msgid "Could not unmount %s: %s\n"
+msgstr ""
+
#: gfs2/tune/main.c:56
msgid "label"
msgstr ""
@@ -779,410 +805,404 @@ msgstr ""
msgid "too long"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:516
+#: gfs2/convert/gfs2_convert.c:517
msgid "Error: Can't allocate memory for indirect block fix\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:523 gfs2/convert/gfs2_convert.c:558
-#: gfs2/convert/gfs2_convert.c:658
+#: gfs2/convert/gfs2_convert.c:524 gfs2/convert/gfs2_convert.c:559
+#: gfs2/convert/gfs2_convert.c:661
msgid "Error: Can't allocate memory for file conversion.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:551 gfs2/convert/gfs2_convert.c:652
+#: gfs2/convert/gfs2_convert.c:552 gfs2/convert/gfs2_convert.c:655
msgid "Error: Can't allocate memory for indirect block fix.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:797 gfs2/convert/gfs2_convert.c:832
-#: gfs2/convert/gfs2_convert.c:879
+#: gfs2/convert/gfs2_convert.c:805 gfs2/convert/gfs2_convert.c:840
+#: gfs2/convert/gfs2_convert.c:887
msgid "Error: out of memory.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:861 gfs2/fsck/initialize.c:899
-#: gfs2/fsck/initialize.c:1026
+#: gfs2/convert/gfs2_convert.c:869 gfs2/fsck/initialize.c:898
+#: gfs2/fsck/initialize.c:1025
#, c-format
msgid "Error reading inode: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1023
+#: gfs2/convert/gfs2_convert.c:1034
msgid "Converting inodes.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1042 gfs2/convert/gfs2_convert.c:1098
+#: gfs2/convert/gfs2_convert.c:1053 gfs2/convert/gfs2_convert.c:1109
#, c-format
msgid "\r%llu inodes from %d rgs converted."
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1141
+#: gfs2/convert/gfs2_convert.c:1152
msgid "Error retrieving directory.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1166 gfs2/convert/gfs2_convert.c:2218
+#: gfs2/convert/gfs2_convert.c:1177 gfs2/convert/gfs2_convert.c:2221
#, c-format
msgid "\r%llu directories, %llu dirents fixed."
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1177
+#: gfs2/convert/gfs2_convert.c:1188
#, c-format
msgid "Error retrieving inode 0x%llx\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1271
+#: gfs2/convert/gfs2_convert.c:1282
msgid "fix_one_directory_exhash: error reading directory.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1287
+#: gfs2/convert/gfs2_convert.c:1298
#, c-format
msgid "Error reading leaf %llx\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1317
+#: gfs2/convert/gfs2_convert.c:1328
msgid "Error fixing exhash directory.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1324
+#: gfs2/convert/gfs2_convert.c:1335
msgid "Error fixing linear directory.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1351
+#: gfs2/convert/gfs2_convert.c:1362
msgid ""
"\n"
"Fixing file and directory information.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1366
+#: gfs2/convert/gfs2_convert.c:1377
msgid "Error processing directory\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1402 gfs2/convert/gfs2_convert.c:1408
+#: gfs2/convert/gfs2_convert.c:1413 gfs2/convert/gfs2_convert.c:1419
#, c-format
msgid "Error retrieving inode at block %llx\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1429
+#: gfs2/convert/gfs2_convert.c:1440
msgid "Error trying to fix cdpn dentry\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1463
+#: gfs2/convert/gfs2_convert.c:1474
msgid ""
"The size reported in the journal index inode is not a\n"
"\tmultiple of the size of a journal index.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1469 gfs2/fsck/fs_recovery.c:742
+#: gfs2/convert/gfs2_convert.c:1480 gfs2/fsck/fs_recovery.c:783
msgid "Unable to allocate journal index\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1473
+#: gfs2/convert/gfs2_convert.c:1484
msgid "Unable to zero journal index\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1492 gfs2/fsck/fs_recovery.c:754
+#: gfs2/convert/gfs2_convert.c:1503 gfs2/fsck/fs_recovery.c:795
msgid "An error occurred while reading the journal index file.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1502
+#: gfs2/convert/gfs2_convert.c:1513
msgid "journal inode size invalid\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1517
+#: gfs2/convert/gfs2_convert.c:1528
msgid "Error: Superblock Quota inode address is NULL\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1521
+#: gfs2/convert/gfs2_convert.c:1532
msgid "Error: Superblock Statfs inode address is NULL\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1525
+#: gfs2/convert/gfs2_convert.c:1536
msgid "Error: Superblock segment size is zero\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1569 gfs2/convert/gfs2_convert.c:1591
-#: gfs2/convert/gfs2_convert.c:1597 gfs2/convert/gfs2_convert.c:1608
-#: gfs2/convert/gfs2_convert.c:1614 gfs2/convert/gfs2_convert.c:2254
-msgid "Error: Bad constants (1)\n"
-msgstr ""
-
-#: gfs2/convert/gfs2_convert.c:1625
+#: gfs2/convert/gfs2_convert.c:1636
#, c-format
msgid "Error: %s does not look like a gfs1 filesystem.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1634
+#: gfs2/convert/gfs2_convert.c:1644
#, c-format
msgid "Could not read resource group index: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1641
+#: gfs2/convert/gfs2_convert.c:1651
#, c-format
msgid "Could not read journal index: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1655
+#: gfs2/convert/gfs2_convert.c:1665
#, c-format
msgid "Examining file system"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1657
+#: gfs2/convert/gfs2_convert.c:1667
msgid "Unable to fill in resource group information.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1664
+#: gfs2/convert/gfs2_convert.c:1674
#, c-format
msgid "%d rgs found.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1673
+#: gfs2/convert/gfs2_convert.c:1683
#, c-format
msgid "This program will convert a gfs1 filesystem to a gfs2 filesystem.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1675
+#: gfs2/convert/gfs2_convert.c:1685
#, c-format
msgid ""
"WARNING: This can't be undone. It is strongly advised that you:\n"
"\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1677
+#: gfs2/convert/gfs2_convert.c:1687
#, c-format
msgid " 1. Back up your entire filesystem first.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1678
+#: gfs2/convert/gfs2_convert.c:1688
#, c-format
msgid " 2. Run fsck.gfs2 first to ensure filesystem integrity.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1679
+#: gfs2/convert/gfs2_convert.c:1689
#, c-format
msgid " 3. Make sure the filesystem is NOT mounted from any node.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1680
+#: gfs2/convert/gfs2_convert.c:1690
#, c-format
msgid " 4. Make sure you have the latest software versions.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1688
+#: gfs2/convert/gfs2_convert.c:1698
#, c-format
msgid "gfs2_convert version %s (built %s %s)\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1699
+#: gfs2/convert/gfs2_convert.c:1709
#, c-format
msgid ""
"\n"
"Usage:\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1700
+#: gfs2/convert/gfs2_convert.c:1710
#, c-format
msgid ""
"%s [-hnqvVy] <device>\n"
"\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1702
+#: gfs2/convert/gfs2_convert.c:1712
#, c-format
msgid "\th - print this help message\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1703
+#: gfs2/convert/gfs2_convert.c:1713
#, c-format
msgid "\tn - assume 'no' to all questions\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1704
+#: gfs2/convert/gfs2_convert.c:1714
#, c-format
msgid "\tq - quieter output\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1705
+#: gfs2/convert/gfs2_convert.c:1715
#, c-format
msgid "\tv - more verbose output\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1706
+#: gfs2/convert/gfs2_convert.c:1716
#, c-format
msgid "\tV - print version information\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1707
+#: gfs2/convert/gfs2_convert.c:1717
#, c-format
msgid "\ty - assume 'yes' to all questions\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1747
+#: gfs2/convert/gfs2_convert.c:1756
#, c-format
msgid "Parameter not understood: %c\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1756 gfs2/convert/gfs2_convert.c:1760
+#: gfs2/convert/gfs2_convert.c:1764
#, c-format
msgid "No device specified. Please use '-h' for help\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1811
+#: gfs2/convert/gfs2_convert.c:1815
msgid "Converting journal space to rg space.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1833
+#: gfs2/convert/gfs2_convert.c:1837
msgid "Error: No suitable rg found for journal.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1836
+#: gfs2/convert/gfs2_convert.c:1840
#, c-format
msgid "Addr 0x%llx comes after rg at addr 0x%llx\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1864
+#: gfs2/convert/gfs2_convert.c:1868
msgid "gfs2_convert: Error converting bitmaps.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1898
+#: gfs2/convert/gfs2_convert.c:1902
#, c-format
msgid ""
"\n"
"Next Inum: %llu\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1930
+#: gfs2/convert/gfs2_convert.c:1934
msgid "Removing obsolete GFS1 file system structures.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1970
+#: gfs2/convert/gfs2_convert.c:1974
#, c-format
msgid "Writing journal #%d..."
msgstr ""
-#: gfs2/convert/gfs2_convert.c:1978
+#: gfs2/convert/gfs2_convert.c:1982
#, c-format
msgid "done.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2092
+#: gfs2/convert/gfs2_convert.c:2096
#, c-format
msgid "Couldn't lookup new quota file: %d\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2099
+#: gfs2/convert/gfs2_convert.c:2103
#, c-format
msgid "Couldn't lookup old quota file: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2132
+#: gfs2/convert/gfs2_convert.c:2136
#, c-format
msgid "Convert %s from GFS1 to GFS2? (y/n)"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2143
+#: gfs2/convert/gfs2_convert.c:2147
#, c-format
msgid "Bad response '%s', please type 'y' or 'n'.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2172
+#: gfs2/convert/gfs2_convert.c:2176
#, c-format
msgid ""
"%s is not a clean gfs filesytem. Please use the fsck.gfs2 utility to correct "
"these errors and try again.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2184
+#: gfs2/convert/gfs2_convert.c:2188
#, c-format
msgid "%s not converted.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2193
+#: gfs2/convert/gfs2_convert.c:2197
msgid "Converting resource groups."
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2198
+#: gfs2/convert/gfs2_convert.c:2202
#, c-format
msgid "%s: Unable to convert resource groups.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2210
+#: gfs2/convert/gfs2_convert.c:2213
#, c-format
msgid ""
"\n"
"%s: Error renumbering inodes.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2223
+#: gfs2/convert/gfs2_convert.c:2226
#, c-format
msgid ""
"\n"
"%s: Error fixing directories.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2230
+#: gfs2/convert/gfs2_convert.c:2233
#, c-format
msgid "\r%llu cdpn symlinks moved to empty directories."
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2234
+#: gfs2/convert/gfs2_convert.c:2237
#, c-format
msgid ""
"\n"
"%s: Error fixing cdpn symlinks.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2240
+#: gfs2/convert/gfs2_convert.c:2243
msgid ""
"\n"
"Converting journals.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2243
+#: gfs2/convert/gfs2_convert.c:2246
#, c-format
msgid "%s: Error converting journal space.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2265
+#: gfs2/convert/gfs2_convert.c:2268
#, c-format
msgid ""
"Reduced journal size to %u MB to accommodate GFS2 file system structures.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2273
+#: gfs2/convert/gfs2_convert.c:2276
#, c-format
msgid "Error: could not build jindex: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2276
+#: gfs2/convert/gfs2_convert.c:2279
msgid "Building GFS2 file system structures.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2280
+#: gfs2/convert/gfs2_convert.c:2283
#, c-format
msgid "Error building per-node directories: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2287
+#: gfs2/convert/gfs2_convert.c:2290
#, c-format
msgid "Error building inum inode: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2295
+#: gfs2/convert/gfs2_convert.c:2298
#, c-format
msgid "Error building statfs inode: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2305
+#: gfs2/convert/gfs2_convert.c:2308
#, c-format
msgid "Error building rindex inode: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2312
+#: gfs2/convert/gfs2_convert.c:2315
#, c-format
msgid "Error building quota inode: %s\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2340
+#: gfs2/convert/gfs2_convert.c:2343
msgid "Committing changes to disk.\n"
msgstr ""
-#: gfs2/convert/gfs2_convert.c:2357
+#: gfs2/convert/gfs2_convert.c:2360
#, c-format
msgid "%s: filesystem converted successfully to gfs2.\n"
msgstr ""
@@ -1196,7 +1216,7 @@ msgid "Freeing buffers.\n"
msgstr ""
#: gfs2/fsck/initialize.c:145
-msgid "Setting block ranges...\n"
+msgid "Setting block ranges..."
msgstr ""
#: gfs2/fsck/initialize.c:160
@@ -1220,648 +1240,699 @@ msgid ""
"%llx)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:253
+#: gfs2/fsck/initialize.c:187
+#, c-format
+msgid "0x%llx to 0x%llx\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:192
+msgid "Error\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:256
#, c-format
msgid "Free metadata block 0x%llx found.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:257
+#: gfs2/fsck/initialize.c:260
#, c-format
msgid "Unlinked dinode 0x%llx found.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:265
+#: gfs2/fsck/initialize.c:268
#, c-format
msgid "Okay to reclaim free metadata in resource group %lld (0x%llx)? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:286
+#: gfs2/fsck/initialize.c:289
#, c-format
msgid "Free metadata block %lld (0x%llx) reclaimed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:297
+#: gfs2/fsck/initialize.c:300
#, c-format
msgid "%lld blocks (total) may need to be freed in pass 5.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:321
+#: gfs2/fsck/initialize.c:324
#, c-format
msgid "The rgrp at %lld (0x%llx) was cleaned of %d free metadata blocks.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:330
+#: gfs2/fsck/initialize.c:333
#, c-format
msgid ""
"Error: resource group %lld (0x%llx): free space (%d) does not match bitmap "
"(%d)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:335
+#: gfs2/fsck/initialize.c:338
msgid "Fix the rgrp free blocks count? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:342 gfs2/fsck/initialize.c:358
+#: gfs2/fsck/initialize.c:345 gfs2/fsck/initialize.c:361
msgid "The rgrp was fixed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:344 gfs2/fsck/initialize.c:360
+#: gfs2/fsck/initialize.c:347 gfs2/fsck/initialize.c:363
msgid "The rgrp was not fixed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:349
+#: gfs2/fsck/initialize.c:352
#, c-format
msgid ""
"Error: resource group %lld (0x%llx): free meta (%d) does not match bitmap "
"(%d)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:354
+#: gfs2/fsck/initialize.c:357
msgid "Fix the rgrp free meta blocks count? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:387
+#: gfs2/fsck/initialize.c:390
msgid "Checking the integrity of all resource groups.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:405
+#: gfs2/fsck/initialize.c:408
#, c-format
msgid ""
"RGs: Consistent: %d Cleaned: %d Inconsistent: %d Fixed: %d Total: "
"%d\n"
msgstr ""
-#: gfs2/fsck/initialize.c:410
+#: gfs2/fsck/initialize.c:413
#, c-format
msgid ""
"%lld blocks may need to be freed in pass 5 due to the cleaned resource "
"groups.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:425
+#: gfs2/fsck/initialize.c:428
msgid "The system master directory seems to be destroyed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:426
+#: gfs2/fsck/initialize.c:429
msgid "Okay to rebuild it? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:427
+#: gfs2/fsck/initialize.c:430
msgid "System master not rebuilt; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:430
+#: gfs2/fsck/initialize.c:433
msgid "Trying to rebuild the master directory.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:438
+#: gfs2/fsck/initialize.c:441
#, c-format
msgid "Error reading master: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:449
+#: gfs2/fsck/initialize.c:452
#, c-format
msgid "Error %d adding jindex directory\n"
msgstr ""
-#: gfs2/fsck/initialize.c:456
+#: gfs2/fsck/initialize.c:459
#, c-format
msgid "Error %d building jindex\n"
msgstr ""
-#: gfs2/fsck/initialize.c:467
+#: gfs2/fsck/initialize.c:470
#, c-format
msgid "Error %d adding per_node directory\n"
msgstr ""
-#: gfs2/fsck/initialize.c:475
+#: gfs2/fsck/initialize.c:478
#, c-format
msgid "Error %d building per_node directory\n"
msgstr ""
-#: gfs2/fsck/initialize.c:487
+#: gfs2/fsck/initialize.c:490
#, c-format
msgid "Error %d adding inum inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:493
+#: gfs2/fsck/initialize.c:496
#, c-format
msgid "Error %d building inum inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:505
+#: gfs2/fsck/initialize.c:508
#, c-format
msgid "Error %d adding statfs inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:511
+#: gfs2/fsck/initialize.c:514
#, c-format
msgid "Error %d building statfs inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:523
+#: gfs2/fsck/initialize.c:526
#, c-format
msgid "Error %d adding rindex inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:529
+#: gfs2/fsck/initialize.c:532
#, c-format
msgid "Error %d building rindex inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:540
+#: gfs2/fsck/initialize.c:543
#, c-format
msgid "Error %d adding quota inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:546
+#: gfs2/fsck/initialize.c:549
#, c-format
msgid "Error %d building quota inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:551
+#: gfs2/fsck/initialize.c:554
msgid "Master directory rebuilt.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:580
+#: gfs2/fsck/initialize.c:583
msgid ""
"The gfs2 system per_node directory inode is missing, so we might not be \n"
"able to rebuild missing journals this run.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:586
+#: gfs2/fsck/initialize.c:589
msgid ""
"The gfs2 system per_node directory inode is missing. Okay to rebuild it? (y/"
"n) "
msgstr ""
-#: gfs2/fsck/initialize.c:592
+#: gfs2/fsck/initialize.c:595
#, c-format
msgid "Error %d rebuilding per_node directory\n"
msgstr ""
-#: gfs2/fsck/initialize.c:599
+#: gfs2/fsck/initialize.c:602
msgid "Unable to rebuild per_node; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:613
+#: gfs2/fsck/initialize.c:616
msgid "Checking if all rgrp and rindex values are good"
msgstr ""
-#: gfs2/fsck/initialize.c:614
+#: gfs2/fsck/initialize.c:617
msgid "Checking if rindex values may be easily repaired"
msgstr ""
-#: gfs2/fsck/initialize.c:615
+#: gfs2/fsck/initialize.c:618
msgid "Calculating where the rgrps should be if evenly spaced"
msgstr ""
-#: gfs2/fsck/initialize.c:616
+#: gfs2/fsck/initialize.c:619
msgid "Trying to rebuild rindex assuming evenly spaced rgrps"
msgstr ""
-#: gfs2/fsck/initialize.c:617
+#: gfs2/fsck/initialize.c:620
msgid "Trying to rebuild rindex assuming unevenly spaced rgrps"
msgstr ""
-#: gfs2/fsck/initialize.c:620
+#: gfs2/fsck/initialize.c:623
msgid "Some damage was found; we need to take remedial measures"
msgstr ""
-#: gfs2/fsck/initialize.c:621
+#: gfs2/fsck/initialize.c:624
msgid "rindex is unevenly spaced: either gfs1-style or corrupt"
msgstr ""
-#: gfs2/fsck/initialize.c:622
+#: gfs2/fsck/initialize.c:625
msgid "rindex calculations don't match: uneven rgrp boundaries"
msgstr ""
-#: gfs2/fsck/initialize.c:623
+#: gfs2/fsck/initialize.c:626
msgid "Too many rgrp misses: rgrps must be unevenly spaced"
msgstr ""
-#: gfs2/fsck/initialize.c:624
+#: gfs2/fsck/initialize.c:627
msgid "Too much damage found: we cannot rebuild this rindex"
msgstr ""
-#: gfs2/fsck/initialize.c:629
+#: gfs2/fsck/initialize.c:632
msgid "Validating Resource Group index.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:633
+#: gfs2/fsck/initialize.c:636
#, c-format
msgid "Level %d rgrp check: %s.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:637
+#: gfs2/fsck/initialize.c:640
#, c-format
msgid "(level %d passed)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:641
+#: gfs2/fsck/initialize.c:644
#, c-format
msgid "(level %d failed: %s)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:644
+#: gfs2/fsck/initialize.c:647
#, c-format
msgid "(level %d failed at block %lld (0x%llx): %s)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:654
+#: gfs2/fsck/initialize.c:657
msgid "Resource Group recovery impossible; I can't fix this file system.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:658
+#: gfs2/fsck/initialize.c:661
#, c-format
msgid "%u resource groups found.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:681
+#: gfs2/fsck/initialize.c:684
msgid "Initializing special inodes...\n"
msgstr ""
-#: gfs2/fsck/initialize.c:699
+#: gfs2/fsck/initialize.c:698
msgid "The gfs2 system inum inode is missing. Okay to rebuild it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:701
+#: gfs2/fsck/initialize.c:700
msgid "fsck.gfs2 cannot continue without a valid inum file; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:707
+#: gfs2/fsck/initialize.c:706
#, c-format
msgid "Error %d rebuilding inum inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:723
+#: gfs2/fsck/initialize.c:713
+msgid "System inum inode was not rebuilt. Aborting.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:722
#, c-format
msgid "Error %d reading system inum inode. Aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:735
+#: gfs2/fsck/initialize.c:734
msgid ""
"The gfs system statfs inode pointer is incorrect. Okay to correct? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:737 gfs2/fsck/initialize.c:755
-#: gfs2/fsck/initialize.c:767
+#: gfs2/fsck/initialize.c:736 gfs2/fsck/initialize.c:754
+#: gfs2/fsck/initialize.c:766
msgid "fsck.gfs2 cannot continue without a valid statfs file; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:747
+#: gfs2/fsck/initialize.c:746
#, c-format
msgid "Error reading statfs inode: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:753
+#: gfs2/fsck/initialize.c:752
msgid "The gfs2 system statfs inode is missing. Okay to rebuild it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:761
+#: gfs2/fsck/initialize.c:760
#, c-format
msgid "Error %d rebuilding statfs inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:766
+#: gfs2/fsck/initialize.c:765
msgid "Rebuild of statfs system file failed."
msgstr ""
-#: gfs2/fsck/initialize.c:779
+#: gfs2/fsck/initialize.c:778
#, c-format
msgid "Error %d reading statfs file. Aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:794
+#: gfs2/fsck/initialize.c:793
msgid ""
"The gfs system quota inode pointer is incorrect. Okay to correct? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:796
+#: gfs2/fsck/initialize.c:795
msgid "fsck.gfs2 cannot continue without a valid quota file; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:806
+#: gfs2/fsck/initialize.c:805
#, c-format
msgid "Error reading quota inode: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:812
+#: gfs2/fsck/initialize.c:811
msgid "The gfs2 system quota inode is missing. Okay to rebuild it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:820
+#: gfs2/fsck/initialize.c:813
+msgid "System quota inode was not rebuilt. Aborting.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:819
#, c-format
msgid "Error %d rebuilding quota inode\n"
msgstr ""
-#: gfs2/fsck/initialize.c:840
+#: gfs2/fsck/initialize.c:824
+msgid "Unable to rebuild system quota file inode. Aborting.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:839
msgid "Unable to determine the boundaries of the file system.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:847
+#: gfs2/fsck/initialize.c:846
msgid ""
"This system doesn't have enough memory and swap space to fsck this file "
"system.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:848
+#: gfs2/fsck/initialize.c:847
#, c-format
msgid "Additional memory needed is approximately: %lluMB\n"
msgstr ""
-#: gfs2/fsck/initialize.c:850
+#: gfs2/fsck/initialize.c:849
msgid ""
"Please increase your swap space by that amount and run gfs2_fsck again.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:892
+#: gfs2/fsck/initialize.c:891
#, c-format
msgid "Found system master directory at: 0x%llx.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:907
+#: gfs2/fsck/initialize.c:906
#, c-format
msgid "Found system jindex file at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:921 gfs2/fsck/initialize.c:1239
+#: gfs2/fsck/initialize.c:920 gfs2/fsck/initialize.c:1238
#, c-format
msgid "Found system master directory at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:933
+#: gfs2/fsck/initialize.c:932
#, c-format
msgid "Found system per_node directory at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:940
+#: gfs2/fsck/initialize.c:939
#, c-format
msgid "From per_node's '..' I backtracked the master directory to: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:946
+#: gfs2/fsck/initialize.c:945
#, c-format
msgid "Unknown system directory at block 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:953
+#: gfs2/fsck/initialize.c:952
#, c-format
msgid "Found system inum file at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:959
+#: gfs2/fsck/initialize.c:958
#, c-format
msgid "Found system statfs file at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:965
+#: gfs2/fsck/initialize.c:964
#, c-format
msgid "Found system rindex file at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:973
+#: gfs2/fsck/initialize.c:972
#, c-format
msgid "Found system quota file at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1001
+#: gfs2/fsck/initialize.c:1000
#, c-format
msgid "Found the root directory at: 0x%llx.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1006
+#: gfs2/fsck/initialize.c:1005
#, c-format
msgid ""
"The root dinode should be at block 0x%llx but it seems to be destroyed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1009
+#: gfs2/fsck/initialize.c:1008
#, c-format
msgid "Found a copy of the root directory in a journal at block: 0x%llx.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1012
+#: gfs2/fsck/initialize.c:1011
msgid "Do you want to replace the root dinode from the copy? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:1014
+#: gfs2/fsck/initialize.c:1013
msgid "Damaged root dinode not fixed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1021
+#: gfs2/fsck/initialize.c:1020
msgid "Root directory copied from the journal.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1033 gfs2/fsck/initialize.c:1249
+#: gfs2/fsck/initialize.c:1032 gfs2/fsck/initialize.c:1248
#, c-format
msgid "Found the root directory at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1049 gfs2/fsck/initialize.c:1209
+#: gfs2/fsck/initialize.c:1048 gfs2/fsck/initialize.c:1208
#, c-format
msgid "Found a possible root at: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1103
+#: gfs2/fsck/initialize.c:1102
#, c-format
msgid "boff:%d bsize2:%d rg:0x%llx, rb:0x%llx\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1118
+#: gfs2/fsck/initialize.c:1117
#, c-format
msgid "Block size determined to be: %d\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1166
+#: gfs2/fsck/initialize.c:1165
msgid ""
"Gathering information to repair the gfs2 superblock. This may take some "
"time.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1173
+#: gfs2/fsck/initialize.c:1172
msgid "Block size not apparent; checking elsewhere.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1185
+#: gfs2/fsck/initialize.c:1184
msgid ""
"Unable to determine the block size; this does not look like a gfs2 file "
"system.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1195
+#: gfs2/fsck/initialize.c:1194
msgid "Unable to locate the system master directory.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1201
+#: gfs2/fsck/initialize.c:1200
msgid "Unable to locate the root directory.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1205
+#: gfs2/fsck/initialize.c:1204
msgid "Can't find any dinodes that might be the root; using master - 1.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1217
+#: gfs2/fsck/initialize.c:1216
msgid "The root dinode block is destroyed.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1218
+#: gfs2/fsck/initialize.c:1217
msgid ""
"At this point I recommend reinitializing it.\n"
"Hopefully everything will later be put into lost+found.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1222
+#: gfs2/fsck/initialize.c:1221
msgid "Okay to reinitialize the root dinode? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:1224
+#: gfs2/fsck/initialize.c:1223
msgid "The root dinode was not reinitialized; aborting.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1237
+#: gfs2/fsck/initialize.c:1236
msgid "Okay to fix the GFS2 superblock? (y/n)"
msgstr ""
-#: gfs2/fsck/initialize.c:1244
+#: gfs2/fsck/initialize.c:1243
#, c-format
msgid "Error reading master inode: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1254
+#: gfs2/fsck/initialize.c:1253
#, c-format
msgid "Error reading root inode: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1267
+#: gfs2/fsck/initialize.c:1266
msgid ""
"GFS2 superblock not fixed; fsck cannot proceed without a valid superblock.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1289
+#: gfs2/fsck/initialize.c:1288
msgid "Initializing lists...\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1299
+#: gfs2/fsck/initialize.c:1298
msgid "GFS superblock is larger than the blocksize!\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1305
-msgid "Bad constants (1)\n"
+#: gfs2/fsck/initialize.c:1359
+#, c-format
+msgid "Clearing journal %d\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1395
+#: gfs2/fsck/initialize.c:1394
#, c-format
msgid "Computed correct journal segment size to %u. Reset it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:1397
+#: gfs2/fsck/initialize.c:1396
msgid "Error: Cannot proceed without a valid journal segment size value.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1401
+#: gfs2/fsck/initialize.c:1400
#, c-format
msgid "Resetting journal segment size to %u\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1415 gfs2/fsck/initialize.c:1442
+#: gfs2/fsck/initialize.c:1414 gfs2/fsck/initialize.c:1441
#, c-format
msgid "Error %d reading system journal index inode. Aborting\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1423
+#: gfs2/fsck/initialize.c:1422
msgid ""
"The gfs2 journal segment size is 0 and a correct value cannot be determined "
"in a single-journal filesystem.\n"
"Continue with default? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:1427
+#: gfs2/fsck/initialize.c:1426
msgid "Error: Cannot proceed without a valid sb_seg_size value.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1467
+#: gfs2/fsck/initialize.c:1466
msgid "Failed to set correct journal segment size. Cannot continue\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1471
+#: gfs2/fsck/initialize.c:1470
msgid "Clearing GFS journals (this may take a while)\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1484
+#: gfs2/fsck/initialize.c:1483
msgid ""
"\n"
"Journals cleared.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1503
+#: gfs2/fsck/initialize.c:1502
msgid "The gfs2 system rindex inode is missing. Okay to rebuild it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:1505
+#: gfs2/fsck/initialize.c:1504
msgid "Error: Cannot proceed without a valid rindex.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1509
+#: gfs2/fsck/initialize.c:1508
#, c-format
msgid "Error %d rebuilding rindex\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1534
+#: gfs2/fsck/initialize.c:1518
+#, c-format
+msgid "Journal index entry '%.*s' has an invalid filename.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1579
+msgid "Validating the journal index.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1590
msgid "The gfs2 system jindex inode is missing. Okay to rebuild it? (y/n) "
msgstr ""
-#: gfs2/fsck/initialize.c:1536
+#: gfs2/fsck/initialize.c:1592 gfs2/fsck/initialize.c:1621
msgid "Error: cannot proceed without a valid jindex file.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1550
+#: gfs2/fsck/initialize.c:1599
#, c-format
msgid "Error %d rebuilding jindex\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1557
-msgid "Unable to read in jindex inode.\n"
+#: gfs2/fsck/initialize.c:1610
+msgid "Checking the integrity of the journal index.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1619
+msgid "The system journal index is damaged.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1583
+#: gfs2/fsck/initialize.c:1620
+msgid "Okay to rebuild it? (y/n) "
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1627
+msgid "Corrupt journal index was removed.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1630
+msgid "Error rebuilding journal index: Cannot continue.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1641
+msgid "Unable to read jindex inode.\n"
+msgstr ""
+
+#: gfs2/fsck/initialize.c:1667
#, c-format
msgid "Unable to open device: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1622
+#: gfs2/fsck/initialize.c:1706
msgid "Unable to block other mounters\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1642
+#: gfs2/fsck/initialize.c:1726
#, c-format
msgid "Error reading master directory: %s\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1678
+#: gfs2/fsck/initialize.c:1765
msgid ""
"\n"
"Journal recovery complete.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1692
+#: gfs2/fsck/initialize.c:1779
#, c-format
msgid "Device %s is busy.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1700
+#: gfs2/fsck/initialize.c:1787
msgid "Unable to unblock other mounters - manual intervention required\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1701
+#: gfs2/fsck/initialize.c:1788
msgid "Use 'gfs2_tool sb <device> proto' to fix\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1703
+#: gfs2/fsck/initialize.c:1790
msgid "Syncing the device.\n"
msgstr ""
-#: gfs2/fsck/initialize.c:1714
+#: gfs2/fsck/initialize.c:1801
msgid "fsck.gfs2: Non-fatal error dropping caches.\n"
msgstr ""
@@ -1873,13 +1944,13 @@ msgstr ""
msgid "old \"..\""
msgstr ""
-#: gfs2/fsck/pass3.c:46 gfs2/fsck/pass2.c:1765 gfs2/fsck/pass2.c:1989
-#: gfs2/fsck/lost_n_found.c:241
+#: gfs2/fsck/pass3.c:46 gfs2/fsck/pass2.c:1737 gfs2/fsck/pass2.c:1884
+#: gfs2/fsck/lost_n_found.c:239
#, c-format
msgid "Error adding directory %s: %s\n"
msgstr ""
-#: gfs2/fsck/pass3.c:53 gfs2/fsck/pass2.c:1996
+#: gfs2/fsck/pass3.c:53 gfs2/fsck/pass2.c:1891
#, c-format
msgid "Directory at %lld (0x%llx)"
msgstr ""
@@ -1888,162 +1959,163 @@ msgstr ""
msgid "new \"..\""
msgstr ""
-#: gfs2/fsck/pass3.c:79
+#: gfs2/fsck/pass3.c:80
#, c-format
msgid "Orphaned directory at block %llu (0x%llx) moved to lost+found\n"
msgstr ""
-#: gfs2/fsck/pass3.c:88
+#: gfs2/fsck/pass3.c:89
#, c-format
msgid ""
"Directory '..' and treewalk connections disagree for inode %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:92
+#: gfs2/fsck/pass3.c:93
#, c-format
msgid "'..' has %llu (0x%llx), treewalk has %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:108
+#: gfs2/fsck/pass3.c:111
msgid "Orphaned directory, move to lost+found\n"
msgstr ""
-#: gfs2/fsck/pass3.c:112
+#: gfs2/fsck/pass3.c:115
#, c-format
msgid "Treewalk parent is correct, fixing dotdot -> %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:124
+#: gfs2/fsck/pass3.c:127
msgid "Both .. and treewalk parents are directories, going with treewalk...\n"
msgstr ""
-#: gfs2/fsck/pass3.c:132
+#: gfs2/fsck/pass3.c:135
msgid ".. parent is valid, but treewalk is bad - reattaching to lost+found"
msgstr ""
-#: gfs2/fsck/pass3.c:137 gfs2/fsck/pass2.c:1943
+#: gfs2/fsck/pass3.c:140 gfs2/fsck/pass2.c:1844
#, c-format
msgid ""
"Remove directory entry for bad inode %llu (0x%llx) in %llu (0x%llx)? (y/n)"
msgstr ""
-#: gfs2/fsck/pass3.c:143
+#: gfs2/fsck/pass3.c:146
msgid "Directory entry to invalid inode remains\n"
msgstr ""
-#: gfs2/fsck/pass3.c:153
+#: gfs2/fsck/pass3.c:156
#, c-format
msgid "Unable to find dentry for block %llu (0x%llx) in %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:159 gfs2/fsck/pass2.c:1965
+#: gfs2/fsck/pass3.c:162 gfs2/fsck/pass2.c:1863
msgid "Directory entry removed\n"
msgstr ""
-#: gfs2/fsck/pass3.c:160
+#: gfs2/fsck/pass3.c:163
msgid "Marking directory unlinked\n"
msgstr ""
-#: gfs2/fsck/pass3.c:185
+#: gfs2/fsck/pass3.c:189
msgid "Marking root inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:191
+#: gfs2/fsck/pass3.c:195
msgid "Marking GFS1 statfs file inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:197
+#: gfs2/fsck/pass3.c:201
msgid "Marking GFS1 jindex file inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:203
+#: gfs2/fsck/pass3.c:207
msgid "Marking GFS1 rindex file inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:209
+#: gfs2/fsck/pass3.c:213
msgid "Marking GFS1 quota file inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:216
+#: gfs2/fsck/pass3.c:220
msgid "Marking master directory inode connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:226
+#: gfs2/fsck/pass3.c:230
msgid "Checking directory linkage.\n"
msgstr ""
-#: gfs2/fsck/pass3.c:239
+#: gfs2/fsck/pass3.c:245
#, c-format
msgid "Directory at block %llu (0x%llx) connected\n"
msgstr ""
-#: gfs2/fsck/pass3.c:248
-msgid "Found unlinked directory containing bad block\n"
+#: gfs2/fsck/pass3.c:254
+#, c-format
+msgid "Found unlinked directory containing bad block at block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:250
+#: gfs2/fsck/pass3.c:259
msgid "Clear unlinked directory with bad blocks? (y/n) "
msgstr ""
-#: gfs2/fsck/pass3.c:252 gfs2/fsck/pass3.c:279
+#: gfs2/fsck/pass3.c:261 gfs2/fsck/pass3.c:286
#, c-format
msgid "inode %lld (0x%llx) is now marked as free\n"
msgstr ""
-#: gfs2/fsck/pass3.c:266
+#: gfs2/fsck/pass3.c:275
msgid "Unlinked directory with bad block remains\n"
msgstr ""
-#: gfs2/fsck/pass3.c:271
+#: gfs2/fsck/pass3.c:278
msgid "Unlinked block marked as an inode is not an inode\n"
msgstr ""
-#: gfs2/fsck/pass3.c:273
+#: gfs2/fsck/pass3.c:280
msgid "Clear the unlinked block? (y/n) "
msgstr ""
-#: gfs2/fsck/pass3.c:275
+#: gfs2/fsck/pass3.c:282
msgid "The block was not cleared\n"
msgstr ""
-#: gfs2/fsck/pass3.c:289
+#: gfs2/fsck/pass3.c:296
msgid "The block was cleared\n"
msgstr ""
-#: gfs2/fsck/pass3.c:293
+#: gfs2/fsck/pass3.c:300
#, c-format
msgid "Found unlinked directory at block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass3.c:300
+#: gfs2/fsck/pass3.c:307
msgid "Unlinked directory has zero size.\n"
msgstr ""
-#: gfs2/fsck/pass3.c:302
+#: gfs2/fsck/pass3.c:309
msgid "Remove zero-size unlinked directory? (y/n) "
msgstr ""
-#: gfs2/fsck/pass3.c:306
+#: gfs2/fsck/pass3.c:313
msgid "zero-sized unlinked inode"
msgstr ""
-#: gfs2/fsck/pass3.c:311
+#: gfs2/fsck/pass3.c:318
msgid "Zero-size unlinked directory remains\n"
msgstr ""
-#: gfs2/fsck/pass3.c:315
+#: gfs2/fsck/pass3.c:322
msgid "Add unlinked directory to lost+found? (y/n) "
msgstr ""
-#: gfs2/fsck/pass3.c:322
+#: gfs2/fsck/pass3.c:329
msgid "Directory relinked to lost+found\n"
msgstr ""
-#: gfs2/fsck/pass3.c:324
+#: gfs2/fsck/pass3.c:331
msgid "Unlinked directory remains unlinked\n"
msgstr ""
-#: gfs2/fsck/pass3.c:331
+#: gfs2/fsck/pass3.c:343
#, c-format
msgid "At end of pass3, lost+found entries is %u\n"
msgstr ""
@@ -2075,149 +2147,153 @@ msgstr ""
msgid "Dotdot parent already set for block %llu (0x%llx)-> %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:167
+#: gfs2/fsck/pass2.c:145
msgid "Invalid block type\n"
msgstr ""
-#: gfs2/fsck/pass2.c:201 gfs2/fsck/pass2.c:631
+#: gfs2/fsck/pass2.c:189 gfs2/fsck/pass2.c:599
#, c-format
msgid ""
"Directory entry '%s' pointing to block %llu (0x%llx) in directory %llu (0x"
"%llx) has the wrong 'formal' inode number.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:207 gfs2/fsck/pass2.c:638
+#: gfs2/fsck/pass2.c:195 gfs2/fsck/pass2.c:606
#, c-format
msgid "The directory entry has %llu (0x%llx) but the inode has %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:213 gfs2/fsck/pass2.c:238
+#: gfs2/fsck/pass2.c:201 gfs2/fsck/pass2.c:226
msgid "Remove the corrupt directory entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:215 gfs2/fsck/pass2.c:242
+#: gfs2/fsck/pass2.c:203 gfs2/fsck/pass2.c:230
msgid "Corrupt directory entry not removed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:224
+#: gfs2/fsck/pass2.c:212
msgid "The entry points to another directory with intact linkage.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:226
+#: gfs2/fsck/pass2.c:214
msgid "Fix the bad directory entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:227
+#: gfs2/fsck/pass2.c:215
msgid "Fixing the corrupt directory entry.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:232
+#: gfs2/fsck/pass2.c:220
msgid "fixed reference"
msgstr ""
-#: gfs2/fsck/pass2.c:235 gfs2/fsck/pass2.c:476
+#: gfs2/fsck/pass2.c:223 gfs2/fsck/pass2.c:474
msgid "Directory entry not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:286
+#: gfs2/fsck/pass2.c:274
#, c-format
msgid ""
"Leaf block %llu (0x%llx) in dinode %llu (0x%llx) has the wrong depth: is %d "
"(length %d), should be %d (length %d).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:293
+#: gfs2/fsck/pass2.c:281
msgid "Fix the leaf block? (y/n)"
msgstr ""
-#: gfs2/fsck/pass2.c:294
+#: gfs2/fsck/pass2.c:282
msgid "The leaf block was not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:300
+#: gfs2/fsck/pass2.c:288
msgid "The leaf block depth was fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:322
+#: gfs2/fsck/pass2.c:311
#, c-format
msgid ""
"Directory entry '%s' at block %lld (0x%llx) is on the wrong leaf block.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:326
+#: gfs2/fsck/pass2.c:315
#, c-format
msgid "Leaf index is: 0x%x. The range for this leaf block is 0x%x - 0x%x\n"
msgstr ""
-#: gfs2/fsck/pass2.c:328
+#: gfs2/fsck/pass2.c:317
msgid "Move the misplaced directory entry to a valid leaf block? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:330
+#: gfs2/fsck/pass2.c:319
msgid "Misplaced directory entry not moved.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:341
+#: gfs2/fsck/pass2.c:330
#, c-format
msgid "Moving it from leaf %llu (0x%llx) to %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:362
+#: gfs2/fsck/pass2.c:351
msgid ""
"The misplaced directory entry already appears on the correct leaf block.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:364
+#: gfs2/fsck/pass2.c:353
#, c-format
msgid "The bad duplicate directory entry '%s' was cleared.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:371
+#: gfs2/fsck/pass2.c:361
msgid "The misplaced directory entry was moved to a valid leaf block.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:374
+#: gfs2/fsck/pass2.c:364
+msgid "Directory hash table was doubled.\n"
+msgstr ""
+
+#: gfs2/fsck/pass2.c:369
#, c-format
msgid "Could not read leaf %d in dinode %<PRIu64>: %s\n"
msgstr ""
-#: gfs2/fsck/pass2.c:378
+#: gfs2/fsck/pass2.c:373
#, c-format
msgid ""
"The planned leaf was split. The new leaf is: %llu (0x%llx). di_blocks=%llu\n"
msgstr ""
-#: gfs2/fsck/pass2.c:383 gfs2/fsck/pass2.c:1239
+#: gfs2/fsck/pass2.c:378 gfs2/fsck/pass2.c:1210
msgid "split leaf"
msgstr ""
-#: gfs2/fsck/pass2.c:393
+#: gfs2/fsck/pass2.c:389
msgid "Accounting deferred.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:411
+#: gfs2/fsck/pass2.c:407
msgid "moved valid reference"
msgstr ""
-#: gfs2/fsck/pass2.c:426
+#: gfs2/fsck/pass2.c:422
msgid "Error moving directory entry.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:454
+#: gfs2/fsck/pass2.c:451
#, c-format
msgid ""
"Block # referenced by directory entry %s in inode %lld (0x%llx) is invalid\n"
msgstr ""
-#: gfs2/fsck/pass2.c:458
+#: gfs2/fsck/pass2.c:455
msgid "Clear directory entry to out of range block? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:462
+#: gfs2/fsck/pass2.c:459
msgid "Directory entry to out of range block remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:472
+#: gfs2/fsck/pass2.c:470
#, c-format
msgid ""
"Dir entry with bad record or name length\n"
@@ -2225,19 +2301,15 @@ msgid ""
"\tName length = %u\n"
msgstr ""
-#: gfs2/fsck/pass2.c:475
+#: gfs2/fsck/pass2.c:473
msgid "Clear the directory entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:480
-msgid "corrupt directory entry"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:482
+#: gfs2/fsck/pass2.c:483
msgid "Bad directory entry deleted.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:488
+#: gfs2/fsck/pass2.c:489
#, c-format
msgid ""
"Dir entry with bad hash or name length\n"
@@ -2245,596 +2317,574 @@ msgid ""
"\tFilename = %s\n"
msgstr ""
-#: gfs2/fsck/pass2.c:492
+#: gfs2/fsck/pass2.c:493
#, c-format
msgid ""
"\tName length found = %u\n"
"\tHash expected = %u (0x%x)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:495
+#: gfs2/fsck/pass2.c:496
#, c-format
msgid "Fix directory hash for %s? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:497
+#: gfs2/fsck/pass2.c:498
#, c-format
msgid "Directory entry hash for %s not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:504
+#: gfs2/fsck/pass2.c:505
#, c-format
msgid "Directory entry hash for %s fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:526
-#, c-format
-msgid "Found directory entry '%s' pointing to invalid block %lld (0x%llx)\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:531
-msgid "Delete inode containing bad blocks? (y/n)"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:532
-msgid "Entry to inode containing bad blocks remains\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:550
-msgid "bad directory entry"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:551
-#, c-format
-msgid "Inode %lld (0x%llx) was deleted.\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:557
+#: gfs2/fsck/pass2.c:524
#, c-format
msgid ""
"Directory entry '%s' referencing inode %llu (0x%llx) in dir inode %llu (0x"
"%llx) block type %d: %s.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:565
+#: gfs2/fsck/pass2.c:532
msgid "was previously marked invalid"
msgstr ""
-#: gfs2/fsck/pass2.c:566
+#: gfs2/fsck/pass2.c:533
msgid "was deleted or is not an inode"
msgstr ""
-#: gfs2/fsck/pass2.c:568
+#: gfs2/fsck/pass2.c:535
msgid "Clear directory entry to non-inode block? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:570
+#: gfs2/fsck/pass2.c:537
msgid "Directory entry to non-inode block remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:595
+#: gfs2/fsck/pass2.c:563
#, c-format
msgid ""
"Error: directory entry type is incompatible with block type at block %lld (0x"
"%llx) in directory inode %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:602
+#: gfs2/fsck/pass2.c:570
#, c-format
msgid "Directory entry type is %d, block type is %d.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:608
+#: gfs2/fsck/pass2.c:576
#, c-format
msgid ""
"Type '%s' in dir entry (%s, %llu/0x%llx) conflicts with type '%s' in dinode. "
"(Dir entry is stale.)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:614
+#: gfs2/fsck/pass2.c:582
msgid "Clear stale directory entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:615
+#: gfs2/fsck/pass2.c:583
msgid "Stale directory entry remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:687
+#: gfs2/fsck/pass2.c:656
#, c-format
msgid "Found . dentry in directory %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:692
+#: gfs2/fsck/pass2.c:661
#, c-format
msgid "Already found '.' entry in directory %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:696
+#: gfs2/fsck/pass2.c:665
msgid "Clear duplicate '.' entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:697
+#: gfs2/fsck/pass2.c:666
msgid "Duplicate '.' entry remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:717
+#: gfs2/fsck/pass2.c:686
#, c-format
msgid ""
"'.' entry's value incorrect in directory %llu (0x%llx). Points to %llu (0x"
"%llx) when it should point to %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:727
+#: gfs2/fsck/pass2.c:696
msgid "Remove '.' reference? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:728
+#: gfs2/fsck/pass2.c:697
msgid "Invalid '.' reference remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:747
+#: gfs2/fsck/pass2.c:716
#, c-format
msgid "Found '..' dentry in directory %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:751
+#: gfs2/fsck/pass2.c:720
#, c-format
msgid "Already had a '..' entry in directory %llu(0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:755
+#: gfs2/fsck/pass2.c:724
msgid "Clear duplicate '..' entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:756
+#: gfs2/fsck/pass2.c:725
msgid "Duplicate '..' entry remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:775
+#: gfs2/fsck/pass2.c:743
#, c-format
msgid ""
"Found '..' entry in directory %llu (0x%llx) pointing to something that's not "
"a directory"
msgstr ""
-#: gfs2/fsck/pass2.c:779
+#: gfs2/fsck/pass2.c:747
msgid "Clear bad '..' directory entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:780
+#: gfs2/fsck/pass2.c:748
msgid "Bad '..' directory entry remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:824
+#: gfs2/fsck/pass2.c:792
#, c-format
msgid "Found non-dir inode dentry pointing to %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:834
+#: gfs2/fsck/pass2.c:802
#, c-format
msgid "%s: Hard link to block %llu (0x%llx) detected.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:839
+#: gfs2/fsck/pass2.c:807
msgid "Clear hard link to directory? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:842
+#: gfs2/fsck/pass2.c:810
msgid "Hard link to directory remains\n"
msgstr ""
-#: gfs2/fsck/pass2.c:851
+#: gfs2/fsck/pass2.c:819
msgid "valid reference"
msgstr ""
-#: gfs2/fsck/pass2.c:863 gfs2/fsck/pass2.c:1050
+#: gfs2/fsck/pass2.c:831 gfs2/fsck/pass2.c:1021
#, c-format
msgid "Bad directory entry '%s' cleared.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:881
+#: gfs2/fsck/pass2.c:849
#, c-format
msgid ""
"Padding inode %llu (0x%llx) hash table at offset %d (0x%x) for %d pointers.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:902
+#: gfs2/fsck/pass2.c:870
#, c-format
msgid ""
"New leaf block was allocated at %llu (0x%llx) for index %d (0x%x), length "
"%d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:907
+#: gfs2/fsck/pass2.c:875
msgid "pad leaf"
msgstr ""
-#: gfs2/fsck/pass2.c:934
+#: gfs2/fsck/pass2.c:904
#, c-format
msgid ""
"Leaf block %llu (0x%llx) seems to be out of place and its contents need to "
"be moved to lost+found.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:937
+#: gfs2/fsck/pass2.c:907
msgid "Attempt to fix it? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:938
+#: gfs2/fsck/pass2.c:908
msgid "Directory leaf was not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:952
+#: gfs2/fsck/pass2.c:922
msgid "Encountered bad filename length; stopped processing.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:958
+#: gfs2/fsck/pass2.c:928
msgid "Skipping entry '.'\n"
msgstr ""
-#: gfs2/fsck/pass2.c:961
+#: gfs2/fsck/pass2.c:931
msgid "Skipping entry '..'\n"
msgstr ""
-#: gfs2/fsck/pass2.c:963
+#: gfs2/fsck/pass2.c:933
#, c-format
msgid "Skipping sentinel '%s'\n"
msgstr ""
-#: gfs2/fsck/pass2.c:973
+#: gfs2/fsck/pass2.c:943
#, c-format
msgid "Not relocating corrupt entry \"%s\".\n"
msgstr ""
-#: gfs2/fsck/pass2.c:980
+#: gfs2/fsck/pass2.c:950
#, c-format
msgid "Error %d encountered while trying to relocate \"%s\" to lost+found.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:988 gfs2/fsck/lost_n_found.c:251
+#: gfs2/fsck/pass2.c:958 gfs2/fsck/lost_n_found.c:245
msgid "from lost+found"
msgstr ""
-#: gfs2/fsck/pass2.c:994 gfs2/fsck/lost_n_found.c:254
+#: gfs2/fsck/pass2.c:964 gfs2/fsck/lost_n_found.c:248
msgid "to lost+found"
msgstr ""
-#: gfs2/fsck/pass2.c:995
+#: gfs2/fsck/pass2.c:965
#, c-format
msgid "Relocated \"%s\", block %llu (0x%llx) to lost+found.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1006
+#: gfs2/fsck/pass2.c:976
msgid ""
"Directory entries from misplaced leaf block were relocated to lost+found.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1009
+#: gfs2/fsck/pass2.c:979
msgid "lost leaf"
msgstr ""
-#: gfs2/fsck/pass2.c:1118
+#: gfs2/fsck/pass2.c:1089
#, c-format
msgid ""
"Dinode %llu (0x%llx) has a hash table error at index 0x%x, length 0x%x: leaf "
"block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1123 gfs2/fsck/pass2.c:1343 gfs2/fsck/pass2.c:1367
-#: gfs2/fsck/pass2.c:1464 gfs2/fsck/pass2.c:1552
+#: gfs2/fsck/pass2.c:1094 gfs2/fsck/pass2.c:1315 gfs2/fsck/pass2.c:1339
+#: gfs2/fsck/pass2.c:1436 gfs2/fsck/pass2.c:1524
msgid "Fix the hash table? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:1124 gfs2/fsck/pass2.c:1344 gfs2/fsck/pass2.c:1368
-#: gfs2/fsck/pass2.c:1465 gfs2/fsck/pass2.c:1553
+#: gfs2/fsck/pass2.c:1095 gfs2/fsck/pass2.c:1316 gfs2/fsck/pass2.c:1340
+#: gfs2/fsck/pass2.c:1437 gfs2/fsck/pass2.c:1525
msgid "Hash table not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1139
+#: gfs2/fsck/pass2.c:1110
#, c-format
msgid "This leaf block's depth (%d) is too big for this dinode's depth (%d)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1157
+#: gfs2/fsck/pass2.c:1128
#, c-format
msgid ""
"Out of place leaf block %llu (0x%llx) had no entries, so it was deleted.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1162
+#: gfs2/fsck/pass2.c:1133
#, c-format
msgid "Reprocessing index 0x%x (case 1).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1175
+#: gfs2/fsck/pass2.c:1146
#, c-format
msgid ""
"This leaf block has hash index %d, which is out of bounds for where it "
"appears in the hash table (%d - %d)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1188
+#: gfs2/fsck/pass2.c:1159
#, c-format
msgid "Leaf pointers start at %d (0x%x), should be %d (%x).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1203
+#: gfs2/fsck/pass2.c:1174
#, c-format
msgid ""
"Leaf block should start at 0x%x, but it appears at 0x%x in the hash table.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1218
+#: gfs2/fsck/pass2.c:1189
#, c-format
msgid "For depth %d, length %d, the proper start is: 0x%x.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1226
+#: gfs2/fsck/pass2.c:1197
#, c-format
msgid "Leaf block %llu (0x%llx) was split from length %d to %d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1230
+#: gfs2/fsck/pass2.c:1201
#, c-format
msgid "Programming error: proper_len=%d, di_depth = %d, lf_depth = %d.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1235
+#: gfs2/fsck/pass2.c:1206
#, c-format
msgid ""
"New split-off leaf block was allocated at %lld (0x%llx) for index %d (0x%x)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1241
+#: gfs2/fsck/pass2.c:1213
msgid "Hash table repaired.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1246
+#: gfs2/fsck/pass2.c:1218
msgid ""
"One leaf split is not enough. The hash table will need to be reprocessed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1255
+#: gfs2/fsck/pass2.c:1227
#, c-format
msgid "There are %d pointers, but leaf 0x%llx's depth, %d, only allows %d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1274
+#: gfs2/fsck/pass2.c:1246
#, c-format
msgid "Found %d extra pointers to leaf %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1278
+#: gfs2/fsck/pass2.c:1250
#, c-format
msgid "Reprocessing index 0x%x (case 2).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1310
+#: gfs2/fsck/pass2.c:1282
#, c-format
msgid ""
"Dinode %llu (0x%llx) has duplicate leaf pointers to block %llu (0x%llx) at "
"offsets %u (0x%x) (for 0x%x) and %u (0x%x) (for 0x%x)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1340
+#: gfs2/fsck/pass2.c:1312
#, c-format
msgid ""
"This leaf block has hash index %d, which is out of bounds for lindex (%d - "
"%d)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1355 gfs2/fsck/pass2.c:1378
+#: gfs2/fsck/pass2.c:1327 gfs2/fsck/pass2.c:1350
#, c-format
msgid "Hash index 0x%x is the proper reference to leaf 0x%llx.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1364
+#: gfs2/fsck/pass2.c:1336
#, c-format
msgid ""
"This leaf block has hash index %d, which is out of bounds for lindex (%d - "
"%d).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1459
+#: gfs2/fsck/pass2.c:1431
#, c-format
msgid "Dinode %llu (0x%llx) has bad leaf pointers at offset %d for %d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1470 gfs2/fsck/metawalk.c:2093
+#: gfs2/fsck/pass2.c:1442 gfs2/fsck/metawalk.c:2242
msgid "replacing"
msgstr ""
-#: gfs2/fsck/pass2.c:1487
+#: gfs2/fsck/pass2.c:1459
#, c-format
msgid ""
"lindex 0x%llx is not a proper starting point for leaf %llu (0x%llx): 0x%llx\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1499
+#: gfs2/fsck/pass2.c:1471
msgid "More leaf splits are needed; "
msgstr ""
-#: gfs2/fsck/pass2.c:1501
+#: gfs2/fsck/pass2.c:1473
#, c-format
msgid "Reprocessing index 0x%x (case 3).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1513
+#: gfs2/fsck/pass2.c:1485
#, c-format
msgid ""
"Length %d (0x%x) is not a proper length for leaf %llu (0x%llx). Valid "
"boundary assumed to be %d (0x%x).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1533
+#: gfs2/fsck/pass2.c:1505
#, c-format
msgid "Reprocessing index 0x%x (case 4).\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1547
+#: gfs2/fsck/pass2.c:1519
#, c-format
msgid ""
"Dinode %llu (0x%llx) has a hash table inconsistency at index %d (0x%x) for "
"%d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1566
+#: gfs2/fsck/pass2.c:1538
#, c-format
msgid "Length 0x%x is not proper for leaf %llu (0x%llx): 0x%x\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1622
+#: gfs2/fsck/pass2.c:1594
#, c-format
msgid ""
"Error: quota_change block at %lld (0x%llx) is the wrong metadata type.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1656
+#: gfs2/fsck/pass2.c:1628
#, c-format
msgid "Checking system file %s\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1659
+#: gfs2/fsck/pass2.c:1631
#, c-format
msgid "System file %s is missing.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1660 gfs2/fsck/pass2.c:1673
+#: gfs2/fsck/pass2.c:1632 gfs2/fsck/pass2.c:1645
msgid "Rebuild the system file? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:1671
+#: gfs2/fsck/pass2.c:1643
#, c-format
msgid "System file %s has an invalid size. Is %llu, should be %llu.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1682
+#: gfs2/fsck/pass2.c:1654
#, c-format
msgid "System file %s has bad contents.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1683
+#: gfs2/fsck/pass2.c:1655
msgid "Delete and rebuild the system file? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:1696
+#: gfs2/fsck/pass2.c:1668
#, c-format
msgid "Error building %s\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1701
+#: gfs2/fsck/pass2.c:1673
#, c-format
msgid "Error rebuilding %s.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1706
+#: gfs2/fsck/pass2.c:1678
#, c-format
msgid "System file %s rebuilt.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1719
+#: gfs2/fsck/pass2.c:1692
#, c-format
msgid "Checking system directory inode '%s'\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1722
+#: gfs2/fsck/pass2.c:1695
#, c-format
msgid "Failed to check '%s': sysinode is null\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1740
+#: gfs2/fsck/pass2.c:1713
msgid "System inode"
msgstr ""
-#: gfs2/fsck/pass2.c:1758
+#: gfs2/fsck/pass2.c:1730
#, c-format
msgid "No '.' entry found for %s directory.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1759 gfs2/fsck/pass2.c:1984
+#: gfs2/fsck/pass2.c:1731 gfs2/fsck/pass2.c:1879
msgid "Is it okay to add '.' entry? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:1761
+#: gfs2/fsck/pass2.c:1733
msgid "Adding '.' entry\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1776 gfs2/fsck/pass2.c:2008
+#: gfs2/fsck/pass2.c:1748 gfs2/fsck/pass2.c:1901
msgid "The directory was not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1779
+#: gfs2/fsck/pass2.c:1751
#, c-format
msgid "%s inode %llu (0x%llx): Entries is %d - should be %d\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1784
+#: gfs2/fsck/pass2.c:1756
#, c-format
msgid "Fix entries for %s inode %llu (0x%llx)? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:1790
+#: gfs2/fsck/pass2.c:1762
msgid "Entries updated\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1792
+#: gfs2/fsck/pass2.c:1764
#, c-format
msgid "Entries for inode %llu (0x%llx) left out of sync\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1885
-msgid "Checking directory inodes.\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:1905
-msgid "Pass2 skipping the new lost+found.\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:1909
-#, c-format
-msgid "Checking directory inode at block %llu (0x%llx)\n"
-msgstr ""
-
-#: gfs2/fsck/pass2.c:1957
+#: gfs2/fsck/pass2.c:1856
#, c-format
msgid "Unable to find dentry for %llu (0x%llx) in %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1967
+#: gfs2/fsck/pass2.c:1865
msgid "Directory entry to invalid inode remains.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1968
+#: gfs2/fsck/pass2.c:1867
#, c-format
msgid "Directory block %lld (0x%llx) is now marked as 'invalid'\n"
msgstr ""
-#: gfs2/fsck/pass2.c:1979
+#: gfs2/fsck/pass2.c:1876
#, c-format
msgid "No '.' entry found for directory inode at block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:2004
+#: gfs2/fsck/pass2.c:1897
msgid "\". (itself)\""
msgstr ""
-#: gfs2/fsck/pass2.c:2006
+#: gfs2/fsck/pass2.c:1899
msgid "The directory was fixed.\n"
msgstr ""
-#: gfs2/fsck/pass2.c:2013
+#: gfs2/fsck/pass2.c:1906
#, c-format
msgid "Entries is %d - should be %d for inode block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass2.c:2018
+#: gfs2/fsck/pass2.c:1910
msgid "Fix the entry count? (y/n) "
msgstr ""
-#: gfs2/fsck/pass2.c:2022
+#: gfs2/fsck/pass2.c:1914
msgid "The entry count was not fixed.\n"
msgstr ""
+#: gfs2/fsck/pass2.c:1964
+msgid "Checking directory inodes.\n"
+msgstr ""
+
+#: gfs2/fsck/pass2.c:1991
+msgid "Pass2 skipping the new lost+found.\n"
+msgstr ""
+
+#: gfs2/fsck/pass2.c:1995
+#, c-format
+msgid "Checking directory inode at block %llu (0x%llx)\n"
+msgstr ""
+
#: gfs2/fsck/metawalk.c:41
#, c-format
msgid ""
@@ -2842,19 +2892,19 @@ msgid ""
"or superblock.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:55
+#: gfs2/fsck/metawalk.c:54
#, c-format
msgid ""
"Reference as '%s' to block %llu (0x%llx) which was marked as dinode. Needs "
"further investigation.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:65
+#: gfs2/fsck/metawalk.c:64
#, c-format
msgid "Block %llu (0x%llx) was '%s', should be %s.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:69
+#: gfs2/fsck/metawalk.c:68
msgid "Fix the bitmap? (y/n)"
msgstr ""
@@ -2876,232 +2926,246 @@ msgstr ""
msgid "(%s:%d) inode (0x%llx) references %s block (0x%llx): marking as '%s'\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:180
+#: gfs2/fsck/metawalk.c:181
msgid "This block is not represented in the bitmap.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:373
+#: gfs2/fsck/metawalk.c:374
#, c-format
msgid "Checking leaf %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:377
-#, c-format
-msgid "Invalid directory type %d specified\n"
-msgstr ""
-
-#: gfs2/fsck/metawalk.c:395
+#: gfs2/fsck/metawalk.c:393
#, c-format
msgid ""
"Directory block %llu (0x%llx), entry %d of directory %llu (0x%llx) is "
"corrupt.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:403
+#: gfs2/fsck/metawalk.c:401
msgid "Attempt to repair it? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:410
+#: gfs2/fsck/metawalk.c:408
msgid ""
"Unable to repair corrupt directory entry; the entry was removed instead.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:416
+#: gfs2/fsck/metawalk.c:414
msgid "Corrupt directory entry repaired.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:421 gfs2/fsck/metawalk.c:444
+#: gfs2/fsck/metawalk.c:419 gfs2/fsck/metawalk.c:442
#, c-format
msgid "Corrupt directory entry ignored, stopped after checking %d entries.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:429
+#: gfs2/fsck/metawalk.c:427
msgid "First dirent is a sentinel (place holder).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:432
+#: gfs2/fsck/metawalk.c:430
#, c-format
msgid ""
"Directory entry with inode number of zero in leaf %llu (0x%llx) of directory "
"%llu (0x%llx)!\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:439
+#: gfs2/fsck/metawalk.c:437
msgid "Attempt to remove it? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:441
+#: gfs2/fsck/metawalk.c:439
msgid "The corrupt directory entry was removed.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:453
+#: gfs2/fsck/metawalk.c:451
msgid "First dirent is a Sentinel (place holder).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:474
+#: gfs2/fsck/metawalk.c:472
#, c-format
msgid "Last entry processed for %lld->%lld (0x%llx->0x%llx), di_blocks=%llu.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:510
+#: gfs2/fsck/metawalk.c:509
#, c-format
msgid ""
"Leaf block #%llu (0x%llx) is out of range for directory #%llu (0x%llx) at "
"index %d (0x%x).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:517
+#: gfs2/fsck/metawalk.c:516
msgid "that is out of range"
msgstr ""
-#: gfs2/fsck/metawalk.c:525
+#: gfs2/fsck/metawalk.c:524
msgid "that is not really a leaf"
msgstr ""
-#: gfs2/fsck/metawalk.c:534
+#: gfs2/fsck/metawalk.c:533
#, c-format
msgid ""
"Previous reference to leaf %lld (0x%llx) has already checked it; skipping.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:549
+#: gfs2/fsck/metawalk.c:548
#, c-format
msgid "incorrect lf_dirent_format at leaf #%<PRIu64>\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:553
+#: gfs2/fsck/metawalk.c:552
msgid "Fixing lf_dirent_format.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:558
+#: gfs2/fsck/metawalk.c:557
#, c-format
msgid "Inode %llu (0x%llx) points to bad leaf %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:564
+#: gfs2/fsck/metawalk.c:563
msgid "that is not a leaf"
msgstr ""
-#: gfs2/fsck/metawalk.c:589
+#: gfs2/fsck/metawalk.c:588
#, c-format
msgid ""
"Leaf %llu (0x%llx) entry count in directory %llu (0x%llx) does not match "
"number of entries found - is %u, found %u\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:597
+#: gfs2/fsck/metawalk.c:596
msgid "Update leaf entry count? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:600
+#: gfs2/fsck/metawalk.c:599
msgid "Leaf entry count updated\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:602
+#: gfs2/fsck/metawalk.c:601
msgid "Leaf entry count left in inconsistant state\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:721
+#: gfs2/fsck/metawalk.c:607
+#, c-format
+msgid ""
+"Depth of directory %lld (0x%llx) changed from %d to %d; adjusting ref_count "
+"from %d to %d\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:633
+#, c-format
+msgid ""
+"Depth of directory %lld (0x%llx) changed from %d to %d. Adjusting ref_count "
+"from %d to %d\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:742
#, c-format
msgid "Directory #%llu (0x%llx) has no valid leaf blocks\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:739
+#: gfs2/fsck/metawalk.c:760
#, c-format
msgid "Re-reading 0x%llx hash table.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:782
+#: gfs2/fsck/metawalk.c:798
+#, c-format
+msgid "Ref count of leaf 0x%llx changed from %d to %d.\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:812
#, c-format
msgid "Leaf chain #%d (0x%llx) detected.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:786
+#: gfs2/fsck/metawalk.c:816
#, c-format
msgid "Depth of 0x%llx changed from %d to %d\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:792
+#: gfs2/fsck/metawalk.c:824
#, c-format
msgid "Height of 0x%llx changed from %d to %d\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:799
+#: gfs2/fsck/metawalk.c:831
#, c-format
msgid "Block count of 0x%llx changed from %llu to %llu\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:862
+#: gfs2/fsck/metawalk.c:894
#, c-format
msgid "Bad extended attribute found at block %lld (0x%llx)"
msgstr ""
-#: gfs2/fsck/metawalk.c:869
+#: gfs2/fsck/metawalk.c:901
msgid "Repair the bad Extended Attribute? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:881 gfs2/fsck/metawalk.c:1769
-#: gfs2/fsck/metawalk.c:1826 gfs2/fsck/pass1.c:962
+#: gfs2/fsck/metawalk.c:913 gfs2/fsck/metawalk.c:1840
+#: gfs2/fsck/metawalk.c:1897 gfs2/fsck/pass1.c:993
msgid "extended attribute"
msgstr ""
-#: gfs2/fsck/metawalk.c:883
+#: gfs2/fsck/metawalk.c:916
msgid "The EA was fixed.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:887
+#: gfs2/fsck/metawalk.c:920
msgid "The bad EA was not fixed.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:925
+#: gfs2/fsck/metawalk.c:958
#, c-format
msgid "Checking EA leaf block #%llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:985
+#: gfs2/fsck/metawalk.c:1018
msgid "This was the last reference: it's no longer a duplicate.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:991
+#: gfs2/fsck/metawalk.c:1024
#, c-format
msgid "%d block reference(s) remain.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1014
+#: gfs2/fsck/metawalk.c:1047
#, c-format
msgid ""
"%s block %lld (0x%llx), part of inode %lld (0x%llx), was already free.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1025
+#: gfs2/fsck/metawalk.c:1058
#, c-format
msgid ""
"Not clearing duplicate reference in inode at block #%llu (0x%llx) to block #"
"%llu (0x%llx) because it's referenced by another inode.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1056
+#: gfs2/fsck/metawalk.c:1089
#, c-format
msgid "Checking EA indirect block #%llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1076
+#: gfs2/fsck/metawalk.c:1109
msgid "Fix the indirect block too? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:1145
+#: gfs2/fsck/metawalk.c:1178
#, c-format
msgid "Extended attributes exist for inode #%llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1331
+#: gfs2/fsck/metawalk.c:1364
#, c-format
msgid ""
"\n"
"Serious metadata error on block %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1339
+#: gfs2/fsck/metawalk.c:1372
#, c-format
msgid ""
"\n"
@@ -3109,197 +3173,229 @@ msgid ""
"be skipped.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1348
+#: gfs2/fsck/metawalk.c:1381
#, c-format
msgid "Skipping rejected block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1358
+#: gfs2/fsck/metawalk.c:1391
#, c-format
msgid "Skipping duplicate %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1365
+#: gfs2/fsck/metawalk.c:1398
#, c-format
msgid "Skipping invalid block %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1425
+#: gfs2/fsck/metawalk.c:1459
+#, c-format
+msgid "Fatal error on block 0x%llx preempts non-fatal error on block 0x%llx\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:1466
msgid "Unrecoverable "
msgstr ""
-#: gfs2/fsck/metawalk.c:1427
+#: gfs2/fsck/metawalk.c:1471
#, c-format
msgid "data block error %d on block %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1548
+#: gfs2/fsck/metawalk.c:1502
+#, c-format
+msgid "Stopping the undo process: fatal error block 0x%llx was found.\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:1509
+#, c-format
+msgid ""
+"The non-fatal error block 0x%llx was found, but undo processing will "
+"continue until the end of this metadata block.\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:1612
#, c-format
msgid ""
"\rLarge file at %lld (0x%llx) - 100 percent "
"complete. \n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1558
+#: gfs2/fsck/metawalk.c:1624
#, c-format
-msgid "Error: inode %llu (0x%llx) had unrecoverable errors.\n"
+msgid "Error: inode %llu (0x%llx) had unrecoverable errors at %lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1561
+#: gfs2/fsck/metawalk.c:1629
msgid "Remove the invalid inode? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:1563
+#: gfs2/fsck/metawalk.c:1631
msgid "Invalid inode not deleted.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1572
+#: gfs2/fsck/metawalk.c:1640
#, c-format
msgid "Undoing metadata work for block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1609
+#: gfs2/fsck/metawalk.c:1677
msgid "corrupt"
msgstr ""
-#: gfs2/fsck/metawalk.c:1610
+#: gfs2/fsck/metawalk.c:1678
msgid "The corrupt inode was invalidated.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1651
+#: gfs2/fsck/metawalk.c:1716
msgid "Current"
msgstr ""
-#: gfs2/fsck/metawalk.c:1688
+#: gfs2/fsck/metawalk.c:1753
#, c-format
msgid "Removing dentry %llu (0x%llx) from directory %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1693
+#: gfs2/fsck/metawalk.c:1758
msgid "Parent directory is invalid\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1701
-msgid "Parent block is not a directory...ignoring\n"
+#: gfs2/fsck/metawalk.c:1766
+msgid "Parent block is not an inode...ignoring\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1717 gfs2/fsck/pass1.c:930
+#: gfs2/fsck/metawalk.c:1788 gfs2/fsck/pass1.c:961
msgid "metadata"
msgstr ""
-#: gfs2/fsck/metawalk.c:1723 gfs2/fsck/pass1.c:937
+#: gfs2/fsck/metawalk.c:1794 gfs2/fsck/pass1.c:968
msgid "leaf"
msgstr ""
-#: gfs2/fsck/metawalk.c:1730 gfs2/fsck/pass1.c:406 gfs2/fsck/pass1.c:432
-#: gfs2/fsck/pass1.c:944
+#: gfs2/fsck/metawalk.c:1801 gfs2/fsck/pass1.c:413 gfs2/fsck/pass1.c:439
+#: gfs2/fsck/pass1.c:975
msgid "data"
msgstr ""
-#: gfs2/fsck/metawalk.c:1776 gfs2/fsck/pass1.c:953
+#: gfs2/fsck/metawalk.c:1847 gfs2/fsck/pass1.c:984
msgid "indirect extended attribute"
msgstr ""
-#: gfs2/fsck/metawalk.c:1813 gfs2/fsck/pass1.c:867
+#: gfs2/fsck/metawalk.c:1884 gfs2/fsck/pass1.c:898
#, c-format
msgid ""
" Pointers Required: %d\n"
" Pointers Reported: %d\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1845
+#: gfs2/fsck/metawalk.c:1916
#, c-format
msgid ""
"%s reference to new metadata block %lld (0x%llx) is now marked as indirect.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1865
+#: gfs2/fsck/metawalk.c:1937
#, c-format
msgid "%s reference to new data block %lld (0x%llx) is now marked as data.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1883
+#: gfs2/fsck/metawalk.c:1955
msgid "newly allocated leaf"
msgstr ""
-#: gfs2/fsck/metawalk.c:1923
+#: gfs2/fsck/metawalk.c:2016
+#, c-format
+msgid ""
+"Error: inode %llu (0x%llx) has invalid allocation goal block %llu (0x%llx). "
+"Should be %llu (0x%llx)\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:2023
+msgid "Fix the invalid goal block? (y/n) "
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:2027
+msgid "Invalid goal block not fixed.\n"
+msgstr ""
+
+#: gfs2/fsck/metawalk.c:2071
#, c-format
msgid ""
"%s inode %llu (0x%llx) had blocks added; reprocessing its metadata tree at "
"height=%d.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1930
+#: gfs2/fsck/metawalk.c:2078
#, c-format
msgid "Error %d reprocessing the %s metadata tree.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1963
+#: gfs2/fsck/metawalk.c:2111
msgid "Program error: num_copies not a factor of 2.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1964
+#: gfs2/fsck/metawalk.c:2112
#, c-format
msgid "num_copies=%d, dinode = %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1968
+#: gfs2/fsck/metawalk.c:2116
#, c-format
msgid "lindex = %d (0x%x)\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1976
+#: gfs2/fsck/metawalk.c:2124
msgid "Error: allocation failed while fixing directory leaf pointers.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:1981 gfs2/fsck/pass1.c:241
+#: gfs2/fsck/metawalk.c:2129 gfs2/fsck/pass1.c:240
msgid "directory leaf"
msgstr ""
-#: gfs2/fsck/metawalk.c:1982
+#: gfs2/fsck/metawalk.c:2131
#, c-format
msgid ""
"A new directory leaf was allocated at block %lld (0x%llx) to fill the %d (0x"
"%x) pointer gap %s the existing pointer at index %d (0x%x).\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2011
+#: gfs2/fsck/metawalk.c:2160
#, c-format
msgid ""
"Writing to the hash table of directory %lld (0x%llx) at index: 0x%x for 0x"
"%lx pointers.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2024
+#: gfs2/fsck/metawalk.c:2173
msgid "Error: bad write while fixing directory leaf pointers.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2043
+#: gfs2/fsck/metawalk.c:2192
#, c-format
msgid "Directory Inode %llu (0x%llx) points to leaf %llu (0x%llx) %s.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2049
+#: gfs2/fsck/metawalk.c:2198
msgid "Attempt to patch around it? (y/n) "
msgstr ""
-#: gfs2/fsck/metawalk.c:2050
+#: gfs2/fsck/metawalk.c:2199
msgid "Bad leaf left in place.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2065
+#: gfs2/fsck/metawalk.c:2214
#, c-format
msgid ""
"Writing zeros to the hash table of directory %lld (0x%llx) at index: 0x%x "
"for 0x%x pointers.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2077
+#: gfs2/fsck/metawalk.c:2226
#, c-format
msgid "Directory Inode %llu (0x%llx) patched.\n"
msgstr ""
-#: gfs2/fsck/metawalk.c:2101
+#: gfs2/fsck/metawalk.c:2250
#, c-format
msgid "Directory Inode %llu (0x%llx) repaired.\n"
msgstr ""
@@ -3372,44 +3468,40 @@ msgid ""
"dinode %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/util.c:611
+#: gfs2/fsck/util.c:610
msgid "directory"
msgstr ""
-#: gfs2/fsck/util.c:618
+#: gfs2/fsck/util.c:613
msgid "file"
msgstr ""
-#: gfs2/fsck/util.c:622
+#: gfs2/fsck/util.c:616
msgid "symlink"
msgstr ""
-#: gfs2/fsck/util.c:627
+#: gfs2/fsck/util.c:619
msgid "block device"
msgstr ""
-#: gfs2/fsck/util.c:632
+#: gfs2/fsck/util.c:622
msgid "character device"
msgstr ""
-#: gfs2/fsck/util.c:637
+#: gfs2/fsck/util.c:625
msgid "fifo"
msgstr ""
-#: gfs2/fsck/util.c:642
+#: gfs2/fsck/util.c:628
msgid "socket"
msgstr ""
-#: gfs2/fsck/util.c:647 gfs2/fsck/pass1.c:1104
-msgid "invalid mode"
-msgstr ""
-
-#: gfs2/fsck/util.c:748
+#: gfs2/fsck/util.c:731
#, c-format
msgid "This was the last reference: 0x%llx is no longer a duplicate.\n"
msgstr ""
-#: gfs2/fsck/util.c:753
+#: gfs2/fsck/util.c:736
#, c-format
msgid "%d references remain to 0x%llx\n"
msgstr ""
@@ -3501,11 +3593,11 @@ msgstr ""
msgid "Marking lost+found inode connected\n"
msgstr ""
-#: gfs2/fsck/lost_n_found.c:184
+#: gfs2/fsck/lost_n_found.c:183
msgid "Trying to add lost+found to itself...skipping"
msgstr ""
-#: gfs2/fsck/lost_n_found.c:256
+#: gfs2/fsck/lost_n_found.c:250
#, c-format
msgid "Added inode #%llu (0x%llx) to lost+found\n"
msgstr ""
@@ -3611,100 +3703,100 @@ msgstr ""
msgid "rindex rebuilt as follows:\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:627
+#: gfs2/fsck/rgrepair.c:745
#, c-format
msgid "rgsize must be: %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:639
+#: gfs2/fsck/rgrepair.c:757
#, c-format
msgid "fs_total_size = 0x%llx blocks.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:641
+#: gfs2/fsck/rgrepair.c:759
#, c-format
msgid "L3: number of rgs in the index = %d.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:655
+#: gfs2/fsck/rgrepair.c:773
#, c-format
msgid "Block #%lld (0x%llx) (%d of %d) is not %s.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:659
+#: gfs2/fsck/rgrepair.c:777
msgid "Fix the Resource Group? (y/n)"
msgstr ""
-#: gfs2/fsck/rgrepair.c:660
+#: gfs2/fsck/rgrepair.c:778
msgid "Attempting to repair the rgrp.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:745
+#: gfs2/fsck/rgrepair.c:863
msgid "The rindex file does not meet our expectations.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:771 gfs2/fsck/rgrepair.c:783
+#: gfs2/fsck/rgrepair.c:889 gfs2/fsck/rgrepair.c:901
msgid "Error rebuilding rgrp list.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:793
+#: gfs2/fsck/rgrepair.c:911
msgid "WARNING: rindex file is corrupt.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:798
+#: gfs2/fsck/rgrepair.c:916
#, c-format
msgid "L%d: number of rgs expected = %lld.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:801
+#: gfs2/fsck/rgrepair.c:919
#, c-format
msgid "L%d: They don't match; either (1) the fs was extended, (2) an odd\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:803
+#: gfs2/fsck/rgrepair.c:921
#, c-format
msgid "L%d: rgrp size was used, or (3) we have a corrupt rg index.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:829
+#: gfs2/fsck/rgrepair.c:947
#, c-format
msgid "%d addr: 0x%llx < 0x%llx * mismatch\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:836
+#: gfs2/fsck/rgrepair.c:954
#, c-format
msgid "%d addr: 0x%llx > 0x%llx * mismatch\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:846
+#: gfs2/fsck/rgrepair.c:964
#, c-format
msgid "%d addr: 0x%llx 0x%llx * has mismatch\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:857
+#: gfs2/fsck/rgrepair.c:975
#, c-format
msgid "Level %d didn't work. Too many discrepancies.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:859
+#: gfs2/fsck/rgrepair.c:977
#, c-format
msgid "%d out of %d rgrps (%d percent) did not match what was expected.\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:884
+#: gfs2/fsck/rgrepair.c:1002
#, c-format
msgid "Entry missing from rindex: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:889
+#: gfs2/fsck/rgrepair.c:1007
msgid "Out of memory!\n"
msgstr ""
-#: gfs2/fsck/rgrepair.c:908
+#: gfs2/fsck/rgrepair.c:1026
msgid "Fix the index? (y/n)"
msgstr ""
-#: gfs2/fsck/rgrepair.c:929
+#: gfs2/fsck/rgrepair.c:1047
msgid "rindex not fixed.\n"
msgstr ""
@@ -3791,227 +3883,266 @@ msgstr ""
msgid "The statfs file was fixed.\n"
msgstr ""
-#: gfs2/fsck/main.c:259
+#: gfs2/fsck/main.c:274
#, c-format
-msgid "Starting %s\n"
+msgid "%s completed in %s\n"
msgstr ""
-#: gfs2/fsck/main.c:266
+#: gfs2/fsck/main.c:286
#, c-format
-msgid "%s interrupted \n"
+msgid "Starting %s\n"
msgstr ""
-#: gfs2/fsck/main.c:273
+#: gfs2/fsck/main.c:294
#, c-format
-msgid "%s completed in "
+msgid "%s interrupted \n"
msgstr ""
-#: gfs2/fsck/main.c:334
+#: gfs2/fsck/main.c:354
msgid "Initializing fsck\n"
msgstr ""
-#: gfs2/fsck/main.c:339
+#: gfs2/fsck/main.c:359
#, c-format
msgid "%s: clean.\n"
msgstr ""
-#: gfs2/fsck/main.c:369
+#: gfs2/fsck/main.c:389
msgid "Writing changes to disk\n"
msgstr ""
-#: gfs2/fsck/main.c:373
+#: gfs2/fsck/main.c:393
msgid ""
"Superblock was reset. Use tunegfs2 to manually set lock table before "
"mounting.\n"
msgstr ""
-#: gfs2/fsck/main.c:375
+#: gfs2/fsck/main.c:395
msgid "gfs2_fsck complete\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:127
+#: gfs2/fsck/fs_recovery.c:104
+#, c-format
+msgid "Block is part of rgrp 0x%llx; refreshing the rgrp.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:153
#, c-format
msgid "Journal replay writing metadata block #%lld (0x%llx) for journal+0x%x\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:133 gfs2/fsck/fs_recovery.c:245
+#: gfs2/fsck/fs_recovery.c:159 gfs2/fsck/fs_recovery.c:279
msgid "Out of memory when replaying journals.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:185
+#: gfs2/fsck/fs_recovery.c:168
+#, c-format
+msgid "Journal corruption detected at block #%lld (0x%llx) for journal+0x%x.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:219
#, c-format
msgid ""
"Journal replay processing revoke for block #%lld (0x%llx) for journal+0x%x\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:239
+#: gfs2/fsck/fs_recovery.c:273
#, c-format
msgid "Journal replay writing data block #%lld (0x%llx) for journal+0x%x\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:392
+#: gfs2/fsck/fs_recovery.c:351
+#, c-format
+msgid "Journal corruption detected at journal+0x%x.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:433
#, c-format
msgid "Journal block %u (0x%x): sequence no. 0x%llx out of order.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:394
+#: gfs2/fsck/fs_recovery.c:435
#, c-format
msgid "Low: 0x%llx, High: 0x%llx, Prev: 0x%llx\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:401
+#: gfs2/fsck/fs_recovery.c:445
#, c-format
msgid "Renumbering it as 0x%llx\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:455
+#: gfs2/fsck/fs_recovery.c:452
+#, c-format
+msgid "%d sequence errors fixed.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:503
#, c-format
msgid "jid=%u: Looking at journal...\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:461
+#: gfs2/fsck/fs_recovery.c:510
+#, c-format
+msgid ""
+"Journal #%d (\"journal%d\") has %d sequencing errors; tolerance is %d.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:518
#, c-format
msgid "Journal #%d (\"journal%d\") is corrupt\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:462
+#: gfs2/fsck/fs_recovery.c:519
msgid "Not fixing it due to the -n option.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:466
+#: gfs2/fsck/fs_recovery.c:523
#, c-format
msgid "Journal #%d (\"journal%d\") is corrupt.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:468
+#: gfs2/fsck/fs_recovery.c:525
msgid ""
"I'm not fixing it because it may be unsafe:\n"
"Locking protocol is not lock_nolock and the -a or -p option was specified.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:471 gfs2/fsck/fs_recovery.c:514
+#: gfs2/fsck/fs_recovery.c:528 gfs2/fsck/fs_recovery.c:571
msgid ""
"Please make sure no node has the file system mounted then rerun fsck.gfs2 "
"manually without -a or -p.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:476
+#: gfs2/fsck/fs_recovery.c:533
#, c-format
msgid ""
"\n"
"Journal #%d (\"journal%d\") is corrupt. Okay to repair it? (y/n)"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:479
+#: gfs2/fsck/fs_recovery.c:536
#, c-format
msgid "jid=%u: The journal was not repaired.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:483
+#: gfs2/fsck/fs_recovery.c:540
#, c-format
msgid "jid=%u: Repairing journal...\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:486 gfs2/fsck/fs_recovery.c:492
+#: gfs2/fsck/fs_recovery.c:543 gfs2/fsck/fs_recovery.c:549
#, c-format
msgid "jid=%u: Unable to fix the bad journal.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:496
+#: gfs2/fsck/fs_recovery.c:553
#, c-format
msgid "jid=%u: The journal was successfully fixed.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:500
+#: gfs2/fsck/fs_recovery.c:557
#, c-format
msgid "jid=%u: Journal is clean.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:505 gfs2/fsck/fs_recovery.c:510
+#: gfs2/fsck/fs_recovery.c:562 gfs2/fsck/fs_recovery.c:567
#, c-format
msgid "Journal #%d (\"journal%d\") is dirty\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:506
+#: gfs2/fsck/fs_recovery.c:563
msgid "not replaying due to the -n option.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:511
+#: gfs2/fsck/fs_recovery.c:568
msgid ""
"I'm not replaying it because it may be unsafe:\n"
"Locking protocol is not lock_nolock and the -a or -p option was specified.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:520
+#: gfs2/fsck/fs_recovery.c:577
#, c-format
msgid ""
"\n"
"Journal #%d (\"journal%d\") is dirty. Okay to replay it? (y/n)"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:524
+#: gfs2/fsck/fs_recovery.c:581
#, c-format
msgid "jid=%u: Replaying journal...\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:536
+#: gfs2/fsck/fs_recovery.c:591
+msgid "Error found during journal replay.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:595
#, c-format
msgid "jid=%u: Found %u revoke tags\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:541
+#: gfs2/fsck/fs_recovery.c:600
#, c-format
msgid "jid=%u: Replayed %u of %u journaled data blocks\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:543
+#: gfs2/fsck/fs_recovery.c:602
#, c-format
msgid "jid=%u: Replayed %u of %u metadata blocks\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:550
+#: gfs2/fsck/fs_recovery.c:609
#, c-format
msgid "jid=%u: Done\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:553
+#: gfs2/fsck/fs_recovery.c:612
#, c-format
msgid "jid=%u: Failed\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:555
+#: gfs2/fsck/fs_recovery.c:614
msgid "Do you want to clear the journal instead? (y/n)"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:560
+#: gfs2/fsck/fs_recovery.c:618
+#, c-format
+msgid "jid=%u: journal was cleared.\n"
+msgstr ""
+
+#: gfs2/fsck/fs_recovery.c:620
#, c-format
msgid "jid=%u: journal not cleared.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:569
+#: gfs2/fsck/fs_recovery.c:630
#, c-format
msgid ""
"Bad block pointer (out of range) found in journal inode %lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:593
+#: gfs2/fsck/fs_recovery.c:654
#, c-format
msgid ""
"Journal at block %lld (0x%llx) has a bad indirect block pointer %lld (0x"
"%llx) (points to something that is not an indirect block).\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:675
+#: gfs2/fsck/fs_recovery.c:717
#, c-format
msgid ""
"File system journal \"journal%d\" is missing or corrupt: pass1 will try to "
"recreate it.\n"
msgstr ""
-#: gfs2/fsck/fs_recovery.c:696
+#: gfs2/fsck/fs_recovery.c:737
msgid "Recovering journals (this may take a while)\n"
msgstr ""
+#: gfs2/fsck/fs_recovery.c:766
+msgid "Journal index inode not found.\n"
+msgstr ""
+
#: gfs2/fsck/link.c:47
#, c-format
msgid "Dir (0x%llx) incremented counted links to %u for (0x%llx) via %s\n"
@@ -4047,10 +4178,6 @@ msgstr ""
msgid "Changing inode %llu (0x%llx) to have %u links\n"
msgstr ""
-#: gfs2/fsck/pass4.c:59
-msgid "osi_tree broken in scan_info_list!!\n"
-msgstr ""
-
#: gfs2/fsck/pass4.c:70
#, c-format
msgid "Found unlinked inode at %llu (0x%llx)\n"
@@ -4073,69 +4200,69 @@ msgstr ""
msgid "Unlinked inode with bad blocks not cleared\n"
msgstr ""
-#: gfs2/fsck/pass4.c:99
+#: gfs2/fsck/pass4.c:94
#, c-format
msgid "Unlinked block %lld (0x%llx) marked as inode is not an inode (%d)\n"
msgstr ""
-#: gfs2/fsck/pass4.c:105
+#: gfs2/fsck/pass4.c:100
msgid "Delete unlinked inode? (y/n) "
msgstr ""
-#: gfs2/fsck/pass4.c:110
+#: gfs2/fsck/pass4.c:105
msgid "invalid unlinked"
msgstr ""
-#: gfs2/fsck/pass4.c:113
+#: gfs2/fsck/pass4.c:108
msgid "The inode was deleted\n"
msgstr ""
-#: gfs2/fsck/pass4.c:115
+#: gfs2/fsck/pass4.c:110
msgid "The inode was not deleted\n"
msgstr ""
-#: gfs2/fsck/pass4.c:127
+#: gfs2/fsck/pass4.c:122
msgid "Unlinked inode has zero size\n"
msgstr ""
-#: gfs2/fsck/pass4.c:128
+#: gfs2/fsck/pass4.c:123
msgid "Clear zero-size unlinked inode? (y/n) "
msgstr ""
-#: gfs2/fsck/pass4.c:131
+#: gfs2/fsck/pass4.c:126
msgid "unlinked zero-length"
msgstr ""
-#: gfs2/fsck/pass4.c:138
+#: gfs2/fsck/pass4.c:133
msgid "Add unlinked inode to lost+found? (y/n)"
msgstr ""
-#: gfs2/fsck/pass4.c:149
+#: gfs2/fsck/pass4.c:144
msgid "Unlinked inode left unlinked\n"
msgstr ""
-#: gfs2/fsck/pass4.c:153
+#: gfs2/fsck/pass4.c:148
#, c-format
msgid ""
"Link count inconsistent for inode %llu (0x%llx) has %u but fsck found %u.\n"
msgstr ""
-#: gfs2/fsck/pass4.c:160
+#: gfs2/fsck/pass4.c:155
#, c-format
msgid "Update link count for inode %llu (0x%llx) ? (y/n) "
msgstr ""
-#: gfs2/fsck/pass4.c:168
+#: gfs2/fsck/pass4.c:163
#, c-format
msgid "Link count updated to %d for inode %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass4.c:174
+#: gfs2/fsck/pass4.c:169
#, c-format
msgid "Link count for inode %llu (0x%llx) still incorrect\n"
msgstr ""
-#: gfs2/fsck/pass4.c:180
+#: gfs2/fsck/pass4.c:175
#, c-format
msgid "block %llu (0x%llx) has link count %d\n"
msgstr ""
@@ -4195,65 +4322,68 @@ msgstr ""
#: gfs2/fsck/pass1c.c:125
#, c-format
-msgid "Extended attributes block for inode #%llu (0x%llx) is invalid.\n"
+msgid ""
+"Extended attributes block %lld (0x%llx) for inode #%llu (0x%llx) is "
+"invalid.\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:133
+#: gfs2/fsck/pass1c.c:134
#, c-format
-msgid "Extended attributes block for inode #%llu (0x%llx) invalid.\n"
+msgid ""
+"Extended attributes block %lld (0x%llx) for inode #%llu (0x%llx) invalid.\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:158 gfs2/fsck/pass1c.c:174
+#: gfs2/fsck/pass1c.c:160 gfs2/fsck/pass1c.c:176
msgid "EA has name length of zero\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:163
+#: gfs2/fsck/pass1c.c:165
msgid "EA rec length too long\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:169
+#: gfs2/fsck/pass1c.c:171
msgid "last EA has no last entry flag\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:185
+#: gfs2/fsck/pass1c.c:187
#, c-format
msgid "EA (%s) type is invalid (%d > %d).\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:199
+#: gfs2/fsck/pass1c.c:201
#, c-format
msgid "EA (%s) has incorrect number of pointers.\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:200
+#: gfs2/fsck/pass1c.c:202
#, c-format
msgid ""
" Required: %d\n"
" Reported: %d\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:205
+#: gfs2/fsck/pass1c.c:207
#, c-format
msgid ""
" Pointers Required: %d\n"
" Pointers Reported: %d\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:249
+#: gfs2/fsck/pass1c.c:251
msgid "Looking for inodes containing ea blocks...\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:259
+#: gfs2/fsck/pass1c.c:261
#, c-format
msgid "EA in inode %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1c.c:266
+#: gfs2/fsck/pass1c.c:268
#, c-format
msgid "Found eattr at %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:46 gfs2/fsck/pass1b.c:105
+#: gfs2/fsck/pass1b.c:46 gfs2/fsck/pass1b.c:104
msgid "Invalid "
msgstr ""
@@ -4263,55 +4393,55 @@ msgid ""
"Inode %s (%lld/0x%llx) has %d reference(s) to block %llu (0x%llx) (%s)\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:119
+#: gfs2/fsck/pass1b.c:118
#, c-format
msgid ""
"Inode %s (%lld/0x%llx)'s reference to block %llu (0x%llx) as '%s' is "
"acceptable.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:139
+#: gfs2/fsck/pass1b.c:138
#, c-format
msgid ""
"Inode %s (%lld/0x%llx) references block %llu (0x%llx) as '%s', but the block "
"is really %s.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:147
+#: gfs2/fsck/pass1b.c:146
#, c-format
msgid "Okay to delete %s inode %lld (0x%llx)? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1b.c:149
+#: gfs2/fsck/pass1b.c:148
msgid "invalidated"
msgstr ""
-#: gfs2/fsck/pass1b.c:152
+#: gfs2/fsck/pass1b.c:151
msgid "The bad inode was not cleared."
msgstr ""
-#: gfs2/fsck/pass1b.c:162
+#: gfs2/fsck/pass1b.c:161
#, c-format
msgid "Inode %lld (0x%llx) was previously deleted.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:167
+#: gfs2/fsck/pass1b.c:166
#, c-format
msgid "Pass1b is deleting inode %lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:187
+#: gfs2/fsck/pass1b.c:186
msgid "duplicate referencing bad"
msgstr ""
-#: gfs2/fsck/pass1b.c:273
+#: gfs2/fsck/pass1b.c:272
#, c-format
msgid ""
"Block %llu (0x%llx) has %d inodes referencing it for a total of %d duplicate "
"references:\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:330
+#: gfs2/fsck/pass1b.c:329
#, c-format
msgid ""
"----------------------------------------------\n"
@@ -4319,7 +4449,7 @@ msgid ""
"marked invalid.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:346
+#: gfs2/fsck/pass1b.c:345
#, c-format
msgid ""
"----------------------------------------------\n"
@@ -4327,20 +4457,20 @@ msgid ""
"block type.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:360
+#: gfs2/fsck/pass1b.c:359
#, c-format
msgid ""
"----------------------------------------------\n"
"Step 3: Choose one reference to block %llu (0x%llx) to keep.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:375
+#: gfs2/fsck/pass1b.c:374
#, c-format
msgid ""
"Block %llu (0x%llx) has only one remaining valid inode referencing it.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:386
+#: gfs2/fsck/pass1b.c:385
#, c-format
msgid ""
"----------------------------------------------\n"
@@ -4348,682 +4478,707 @@ msgid ""
"%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:395
+#: gfs2/fsck/pass1b.c:394
#, c-format
msgid ""
"The remaining reference inode %lld (0x%llx) is marked invalid: Marking the "
"block as free.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:401 gfs2/fsck/pass1b.c:412
+#: gfs2/fsck/pass1b.c:400 gfs2/fsck/pass1b.c:411
msgid "reference-repaired leaf"
msgstr ""
-#: gfs2/fsck/pass1b.c:407
+#: gfs2/fsck/pass1b.c:406
msgid "reference-repaired data"
msgstr ""
-#: gfs2/fsck/pass1b.c:416
+#: gfs2/fsck/pass1b.c:417
msgid "reference-repaired indirect"
msgstr ""
-#: gfs2/fsck/pass1b.c:421
+#: gfs2/fsck/pass1b.c:423
msgid "reference-repaired extended attribute"
msgstr ""
-#: gfs2/fsck/pass1b.c:425
+#: gfs2/fsck/pass1b.c:428
#, c-format
msgid "Done with duplicate reference to block 0x%llx\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:430
+#: gfs2/fsck/pass1b.c:433
#, c-format
msgid "All duplicate references to block 0x%llx were processed.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:433
+#: gfs2/fsck/pass1b.c:436
#, c-format
msgid ""
"Done with duplicate reference to block 0x%llx, but %d references remain.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:437
+#: gfs2/fsck/pass1b.c:440
#, c-format
msgid "Block %llu (0x%llx) has no more references; Marking as 'free'.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:543
+#: gfs2/fsck/pass1b.c:546
#, c-format
msgid "Block %lld (0x%llx) is not gfs2 metadata.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:577
+#: gfs2/fsck/pass1b.c:580
msgid "Looking for duplicate blocks...\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:581
+#: gfs2/fsck/pass1b.c:584
msgid "No duplicate blocks found\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:587
+#: gfs2/fsck/pass1b.c:590
msgid "Scanning filesystem for inodes containing duplicate blocks...\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:588
+#: gfs2/fsck/pass1b.c:591
#, c-format
msgid "Filesystem has %llu (0x%llx) blocks total\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:596
+#: gfs2/fsck/pass1b.c:599
#, c-format
msgid "Found all %d original references to duplicates.\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:608
+#: gfs2/fsck/pass1b.c:609
#, c-format
-msgid "Checking invalidated duplicate dinode %lld (0x%llx)\n"
+msgid "Checking invalidated duplicate block %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1b.c:623
+#: gfs2/fsck/pass1b.c:624
msgid "Handling duplicate blocks\n"
msgstr ""
-#: gfs2/fsck/pass5.c:54 gfs2/fsck/pass5.c:98
-#, c-format
-msgid "Invalid block type %d found\n"
-msgstr ""
-
-#: gfs2/fsck/pass5.c:93
-#, c-format
-msgid "Invalid freemeta type %d found\n"
-msgstr ""
-
-#: gfs2/fsck/pass5.c:134
-#, c-format
-msgid "Invalid status for block %llu (0x%llx).\n"
-msgstr ""
-
-#: gfs2/fsck/pass5.c:146
+#: gfs2/fsck/pass5.c:64
#, c-format
msgid "Unlinked inode found at block %llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass5.c:150
+#: gfs2/fsck/pass5.c:68
msgid "Do you want to reclaim the block? (y/n) "
msgstr ""
-#: gfs2/fsck/pass5.c:154
+#: gfs2/fsck/pass5.c:72
#, c-format
msgid "Unlinked block %llu (0x%llx) bitmap not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass5.c:160
+#: gfs2/fsck/pass5.c:78
#, c-format
msgid "Unlinked block %llu (0x%llx) bitmap fixed.\n"
msgstr ""
-#: gfs2/fsck/pass5.c:165
+#: gfs2/fsck/pass5.c:86
#, c-format
msgid "Unlinked block found at block %llu (0x%llx), left unchanged.\n"
msgstr ""
-#: gfs2/fsck/pass5.c:174
+#: gfs2/fsck/pass5.c:92
#, c-format
msgid "Block %llu (0x%llx) bitmap says %u (%s) but FSCK saw %u (%s)\n"
msgstr ""
-#: gfs2/fsck/pass5.c:181
+#: gfs2/fsck/pass5.c:99
#, c-format
msgid "Metadata type is %u (%s)\n"
msgstr ""
-#: gfs2/fsck/pass5.c:184
+#: gfs2/fsck/pass5.c:102
#, c-format
msgid "Fix bitmap for block %llu (0x%llx) ? (y/n) "
msgstr ""
-#: gfs2/fsck/pass5.c:189
+#: gfs2/fsck/pass5.c:107
msgid "Repair failed.\n"
msgstr ""
-#: gfs2/fsck/pass5.c:191
+#: gfs2/fsck/pass5.c:109
msgid "Fixed.\n"
msgstr ""
-#: gfs2/fsck/pass5.c:193
+#: gfs2/fsck/pass5.c:111
#, c-format
msgid "Bitmap at block %llu (0x%llx) left inconsistent\n"
msgstr ""
-#: gfs2/fsck/pass5.c:230
+#: gfs2/fsck/pass5.c:148
#, c-format
msgid "RG #%llu (0x%llx) free count inconsistent: is %u should be %u\n"
msgstr ""
-#: gfs2/fsck/pass5.c:239
+#: gfs2/fsck/pass5.c:157
#, c-format
msgid "RG #%llu (0x%llx) Inode count inconsistent: is %u should be %u\n"
msgstr ""
-#: gfs2/fsck/pass5.c:248
+#: gfs2/fsck/pass5.c:166
#, c-format
msgid ""
"RG #%llu (0x%llx) Used metadata count inconsistent: is %u should be %u\n"
msgstr ""
-#: gfs2/fsck/pass5.c:257
+#: gfs2/fsck/pass5.c:175
#, c-format
msgid ""
"RG #%llu (0x%llx) Free metadata count inconsistent: is %u should be %u\n"
msgstr ""
-#: gfs2/fsck/pass5.c:269
-msgid "Internal fsck error - AAHHH!\n"
+#: gfs2/fsck/pass5.c:188
+#, c-format
+msgid "Internal fsck error: %u != %u + %u + %u + %u\n"
msgstr ""
-#: gfs2/fsck/pass5.c:273
+#: gfs2/fsck/pass5.c:194
msgid "Update resource group counts? (y/n) "
msgstr ""
-#: gfs2/fsck/pass5.c:274
+#: gfs2/fsck/pass5.c:195
msgid "Resource group counts updated\n"
msgstr ""
-#: gfs2/fsck/pass5.c:281
+#: gfs2/fsck/pass5.c:202
msgid "Resource group counts left inconsistent\n"
msgstr ""
-#: gfs2/fsck/pass5.c:303
+#: gfs2/fsck/pass5.c:224
#, c-format
msgid "Verifying Resource Group #%llu\n"
msgstr ""
-#: gfs2/fsck/pass1.c:138
+#: gfs2/fsck/pass1.c:140
msgid "itself"
msgstr ""
-#: gfs2/fsck/pass1.c:139
+#: gfs2/fsck/pass1.c:141
#, c-format
msgid ""
"Bad indirect block pointer (invalid or out of range) found in system inode "
"%lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:147 gfs2/fsck/pass1.c:201
+#: gfs2/fsck/pass1.c:149 gfs2/fsck/pass1.c:198
msgid "system file"
msgstr ""
-#: gfs2/fsck/pass1.c:182
+#: gfs2/fsck/pass1.c:186
#, c-format
msgid ""
"Block # referenced by system directory entry %s in inode %lld (0x%llx) is "
"invalid or out of range; ignored.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:227
+#: gfs2/fsck/pass1.c:225
#, c-format
msgid ""
"Found duplicate block #%llu (0x%llx) referenced as a directory leaf in "
"dinode %llu (0x%llx) - was marked %d (%s)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:265 gfs2/fsck/pass1.c:343
+#: gfs2/fsck/pass1.c:266 gfs2/fsck/pass1.c:345
msgid "bad block referencing"
msgstr ""
-#: gfs2/fsck/pass1.c:266
+#: gfs2/fsck/pass1.c:267
#, c-format
msgid ""
"Bad indirect block (invalid/out of range) found in inode %lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:275
+#: gfs2/fsck/pass1.c:276
msgid "a directory hash table block"
msgstr ""
-#: gfs2/fsck/pass1.c:278
+#: gfs2/fsck/pass1.c:279
msgid "a journaled data block"
msgstr ""
-#: gfs2/fsck/pass1.c:282
+#: gfs2/fsck/pass1.c:283
#, c-format
msgid ""
"Found duplicate block #%llu (0x%llx) referenced as metadata in indirect "
"block for dinode %llu (0x%llx) - was marked %d (%s)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:297
+#: gfs2/fsck/pass1.c:298
#, c-format
msgid ""
"Inode %lld (0x%llx) has a bad indirect block pointer %lld (0x%llx) (points "
"to something that is not %s).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:315
+#: gfs2/fsck/pass1.c:316
msgid "indirect"
msgstr ""
-#: gfs2/fsck/pass1.c:361
+#: gfs2/fsck/pass1.c:363
#, c-format
msgid ""
"Block %llu (0x%llx) is still referenced from another inode; not freeing.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:375
+#: gfs2/fsck/pass1.c:368
+msgid "This was the only duplicate reference so far; removing it.\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:382
msgid "bad indirect"
msgstr ""
-#: gfs2/fsck/pass1.c:375
+#: gfs2/fsck/pass1.c:382
msgid "referenced data"
msgstr ""
-#: gfs2/fsck/pass1.c:423
+#: gfs2/fsck/pass1.c:430
#, c-format
msgid ""
"Inode %lld (0x%llx) has a reference to block %lld (0x%llx) as a data block, "
"but it appears to be a dinode we haven't checked yet.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:444
+#: gfs2/fsck/pass1.c:451
#, c-format
msgid ""
"inode %lld (0x%llx) has a bad data block pointer %lld (0x%llx) (invalid or "
"out of range) "
msgstr ""
-#: gfs2/fsck/pass1.c:452 gfs2/fsck/pass1.c:476
+#: gfs2/fsck/pass1.c:459 gfs2/fsck/pass1.c:486
#, c-format
msgid "from metadata block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:459
+#: gfs2/fsck/pass1.c:466
msgid "bad (out of range) data"
msgstr ""
-#: gfs2/fsck/pass1.c:466
+#: gfs2/fsck/pass1.c:476
#, c-format
msgid ""
"Found duplicate %s block %llu (0x%llx) referenced as data by dinode %llu (0x"
"%llx) "
msgstr ""
-#: gfs2/fsck/pass1.c:481
+#: gfs2/fsck/pass1.c:492
+msgid ""
+"The block was processed earlier as an inode, so it can't possibly be data.\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:510
msgid ""
"The block was processed earlier as valid metadata, so it can't possibly be "
"data.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:493
+#: gfs2/fsck/pass1.c:522
msgid "Seems to be a normal duplicate; I'll sort it out in pass1b.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:501
+#: gfs2/fsck/pass1.c:530
msgid ""
"The block was invalid as metadata but might be okay as data. I'll sort it "
"out in pass1b.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:510
+#: gfs2/fsck/pass1.c:540
#, c-format
msgid "Block %lld (0x%llx) is a GFS1 rindex block\n"
msgstr ""
-#: gfs2/fsck/pass1.c:513
+#: gfs2/fsck/pass1.c:543
msgid "rgrp"
msgstr ""
-#: gfs2/fsck/pass1.c:516
+#: gfs2/fsck/pass1.c:546
#, c-format
msgid "Block %lld (0x%llx) is a GFS1 journaled data block\n"
msgstr ""
-#: gfs2/fsck/pass1.c:519
+#: gfs2/fsck/pass1.c:549
msgid "jdata"
msgstr ""
-#: gfs2/fsck/pass1.c:541
+#: gfs2/fsck/pass1.c:571
#, c-format
msgid "Inode %lld (0x%llx) has unrecoverable Extended Attribute errors.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:544
+#: gfs2/fsck/pass1.c:574
msgid "Clear all Extended Attributes from the inode? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:546
+#: gfs2/fsck/pass1.c:576
msgid "Extended attributes were removed.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:548
+#: gfs2/fsck/pass1.c:578
msgid "Unable to remove inode eattr pointer; the error remains.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:551
+#: gfs2/fsck/pass1.c:581
msgid "Extended attributes were not removed.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:568
+#: gfs2/fsck/pass1.c:598
#, c-format
msgid "Inode #%llu (0x%llx): %s"
msgstr ""
-#: gfs2/fsck/pass1.c:571
+#: gfs2/fsck/pass1.c:601
#, c-format
msgid " at block #%lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:573
+#: gfs2/fsck/pass1.c:603
msgid "Clear the bad Extended Attribute? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:576
+#: gfs2/fsck/pass1.c:606
msgid "The bad extended attribute was removed.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:580
+#: gfs2/fsck/pass1.c:610
msgid "bad extended attribute"
msgstr ""
-#: gfs2/fsck/pass1.c:584
+#: gfs2/fsck/pass1.c:614
msgid "The bad Extended Attribute was not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:618
+#: gfs2/fsck/pass1.c:648
msgid "Bad indirect Extended Attribute duplicate found"
msgstr ""
-#: gfs2/fsck/pass1.c:624
+#: gfs2/fsck/pass1.c:654
msgid "Extended Attribute indirect block has incorrect type"
msgstr ""
-#: gfs2/fsck/pass1.c:629
+#: gfs2/fsck/pass1.c:659
#, c-format
msgid ""
"Inode #%llu (0x%llx): Duplicate Extended Attribute indirect block found at #"
"%llu (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:641
+#: gfs2/fsck/pass1.c:671
msgid "indirect Extended Attribute"
msgstr ""
-#: gfs2/fsck/pass1.c:657
+#: gfs2/fsck/pass1.c:687
#, c-format
msgid "Marking inode #%llu (0x%llx) with extended attribute block\n"
msgstr ""
-#: gfs2/fsck/pass1.c:675
+#: gfs2/fsck/pass1.c:705
#, c-format
msgid ""
"Inode %lld (0x%llx) has recoverable indirect Extended Attribute errors.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:679
+#: gfs2/fsck/pass1.c:709
msgid "Okay to fix the block count for the inode? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:683
+#: gfs2/fsck/pass1.c:713
#, c-format
msgid "Block count fixed: 1+%lld+%lld+%lld = %lld.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:690
+#: gfs2/fsck/pass1.c:720
msgid "Block count not fixed.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:715
+#: gfs2/fsck/pass1.c:745
msgid "Bad Extended Attribute duplicate found"
msgstr ""
-#: gfs2/fsck/pass1.c:718
+#: gfs2/fsck/pass1.c:748
msgid "Extended Attribute leaf block has incorrect type"
msgstr ""
-#: gfs2/fsck/pass1.c:725
+#: gfs2/fsck/pass1.c:755
#, c-format
msgid "Duplicate block found at #%lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:738
+#: gfs2/fsck/pass1.c:768
msgid "Extended Attribute block removed due to previous errors.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:746
+#: gfs2/fsck/pass1.c:776
msgid "Extended Attribute"
msgstr ""
-#: gfs2/fsck/pass1.c:775
+#: gfs2/fsck/pass1.c:806
#, c-format
msgid ""
"Inode #%llu (0x%llx): Extended Attribute block %llu (0x%llx) has an extended "
"leaf block #%llu (0x%llx) that is invalid or out of range.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:785
+#: gfs2/fsck/pass1.c:816
msgid "bad (out of range) Extended Attribute "
msgstr ""
-#: gfs2/fsck/pass1.c:808
+#: gfs2/fsck/pass1.c:839
#, c-format
msgid "Setting inode %lld (0x%llx) as having eattr block(s) attached.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:819
+#: gfs2/fsck/pass1.c:850
#, c-format
msgid ""
"Inode #%llu (0x%llx): Extended Attribute leaf block #%llu (0x%llx) is "
"invalid or out of range.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:826
+#: gfs2/fsck/pass1.c:857
msgid "bad (out of range) Extended Attribute leaf"
msgstr ""
-#: gfs2/fsck/pass1.c:910
+#: gfs2/fsck/pass1.c:941
#, c-format
msgid ""
"%s block %lld (0x%llx), part of inode %lld (0x%llx), was previously "
"referenced so the invalid reference is ignored.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:992
+#: gfs2/fsck/pass1.c:1023
#, c-format
msgid ""
"Bad %s block pointer (invalid or out of range #%ld) found in inode %lld (0x"
"%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1006
+#: gfs2/fsck/pass1.c:1037
#, c-format
msgid ""
"Duplicated %s block pointer (violation %ld, block %lld (0x%llx)) found in "
"inode %lld (0x%llx).\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1085
+#: gfs2/fsck/pass1.c:1046
+#, c-format
+msgid "Inode 0x%llx bad pointer tolerance exceeded: block 0x%llx.\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1121
#, c-format
msgid "Error: inode %llu (0x%llx) has more than %d bad pointers.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1091
+#: gfs2/fsck/pass1.c:1127
msgid "badly corrupt"
msgstr ""
-#: gfs2/fsck/pass1.c:1139
+#: gfs2/fsck/pass1.c:1140
+msgid "invalid mode"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1175
#, c-format
msgid ""
"Inode #%llu (0x%llx): Ondisk block count (%llu) does not match what fsck "
"found (%llu)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1146
+#: gfs2/fsck/pass1.c:1182
#, c-format
msgid ""
"inode has: %lld, but fsck counts: Dinode:1 + indir:%lld + data: %lld + ea: "
"%lld\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1152
+#: gfs2/fsck/pass1.c:1188
msgid "Fix ondisk block count? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:1156
+#: gfs2/fsck/pass1.c:1192
#, c-format
msgid "Block count for #%llu (0x%llx) fixed\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1160
+#: gfs2/fsck/pass1.c:1196
#, c-format
msgid "Bad block count for #%llu (0x%llx) not fixed\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1185
+#: gfs2/fsck/pass1.c:1222
#, c-format
msgid "Inode #%llu (0x%llx): Bad inode address found: %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1190
+#: gfs2/fsck/pass1.c:1227
#, c-format
msgid "Fix address in inode at block #%llu (0x%llx)? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:1196
+#: gfs2/fsck/pass1.c:1233
#, c-format
msgid "Address in inode at block #%llu (0x%llx) not fixed\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1202
+#: gfs2/fsck/pass1.c:1239
#, c-format
msgid ""
"Inode #%llu (0x%llx): GFS1 formal inode number mismatch: was %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1207
+#: gfs2/fsck/pass1.c:1244
#, c-format
msgid "Fix formal inode number in inode #%llu (0x%llx)? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:1213
+#: gfs2/fsck/pass1.c:1250
#, c-format
msgid "Inode number in inode at block #%lld (0x%llx) not fixed\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1237
+#: gfs2/fsck/pass1.c:1275
#, c-format
msgid "Checking system inode '%s'\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1242
+#: gfs2/fsck/pass1.c:1280
#, c-format
msgid "System inode for '%s' is located at block %llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1247
+#: gfs2/fsck/pass1.c:1285
#, c-format
msgid "Found invalid system dinode at block #%llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1263
+#: gfs2/fsck/pass1.c:1301
msgid "The inode exists but the block is not marked 'in use'; fixing it.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1273
+#: gfs2/fsck/pass1.c:1313
+#, c-format
+msgid "System inode %s is missing the 'system' flag. It should be rebuilt.\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1315
+#, c-format
+msgid "Delete the corrupt %s system inode? (y/n) "
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1324
+#, c-format
+msgid "Removed system inode \"%s\".\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1329
#, c-format
msgid "System inode for '%s' is corrupt or missing.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1280
+#: gfs2/fsck/pass1.c:1336
#, c-format
-msgid "Invalid or missing %s system inode (should be %d, is %d).\n"
+msgid "Invalid or missing %s system inode (is '%s', should be '%s').\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1282
+#: gfs2/fsck/pass1.c:1340
#, c-format
msgid "Create new %s system inode? (y/n) "
msgstr ""
-#: gfs2/fsck/pass1.c:1283
+#: gfs2/fsck/pass1.c:1341
#, c-format
msgid "Rebuilding system file \"%s\"\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1287
+#: gfs2/fsck/pass1.c:1345
#, c-format
-msgid "Error trying to rebuild system file %s: Cannot continue\n"
+msgid "Error rebuilding system inode %s: Cannot continue\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1299
+#: gfs2/fsck/pass1.c:1359
#, c-format
msgid "Cannot continue without valid %s inode\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1317
+#: gfs2/fsck/pass1.c:1377
#, c-format
msgid "Error found in %s while checking directory entries.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1336
+#: gfs2/fsck/pass1.c:1396
#, c-format
msgid "Error %d building journal\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1412
+#: gfs2/fsck/pass1.c:1473
msgid "gfs1 statfs inode"
msgstr ""
-#: gfs2/fsck/pass1.c:1414
+#: gfs2/fsck/pass1.c:1475
msgid "gfs1 jindex inode"
msgstr ""
-#: gfs2/fsck/pass1.c:1416
+#: gfs2/fsck/pass1.c:1477
msgid "gfs1 rindex inode"
msgstr ""
-#: gfs2/fsck/pass1.c:1418
+#: gfs2/fsck/pass1.c:1479
msgid "gfs1 quota inode"
msgstr ""
-#: gfs2/fsck/pass1.c:1457
+#: gfs2/fsck/pass1.c:1518
#, c-format
msgid "Skipping rindex indir block %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1470
+#: gfs2/fsck/pass1.c:1531
#, c-format
msgid "Skipping pass 1 is not a good idea.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1475
+#: gfs2/fsck/pass1.c:1536
#, c-format
msgid "Already processed system inode %lld (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1502
+#: gfs2/fsck/pass1.c:1556
+#, c-format
+msgid ""
+"Block 0x%llx assumed to be previously processed GFS1 non-dinode metadata.\n"
+msgstr ""
+
+#: gfs2/fsck/pass1.c:1563
#, c-format
msgid ""
"Found a duplicate inode block at #%llu (0x%llx) previously marked as a %s\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1512
+#: gfs2/fsck/pass1.c:1573
msgid "dinum.no_addr is wrong, so I assume the bitmap is just wrong.\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1530
+#: gfs2/fsck/pass1.c:1591
#, c-format
msgid "Deferring GFS1 metadata block #%<PRIu64> (0x%<PRIx64>)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1539
+#: gfs2/fsck/pass1.c:1600
#, c-format
msgid "Found invalid inode at block #%llu (0x%llx)\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1638
+#: gfs2/fsck/pass1.c:1710
#, c-format
msgid "Checking metadata in Resource Group #%llu\n"
msgstr ""
-#: gfs2/fsck/pass1.c:1642
+#: gfs2/fsck/pass1.c:1714
#, c-format
msgid "rgrp block %lld (0x%llx) is now marked as 'rgrp data'\n"
msgstr ""
9 years, 1 month
gfs2-utils: RHEL7 - gfs2-utils: Consolidate some "bad constants" strings
by Andrew Price
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=196a5a39...
Commit: 196a5a3920f9b0434fd7066b8954dbfdbc84a0fd
Parent: 7442ec973039b525b3b643679c82516917b93c05
Author: Andrew Price <anprice(a)redhat.com>
AuthorDate: Thu Apr 2 16:27:35 2015 +0100
Committer: Andrew Price <anprice(a)redhat.com>
CommitterDate: Tue Apr 7 19:36:30 2015 +0100
gfs2-utils: Consolidate some "bad constants" strings
Using the same error string here will reduce the number of strings in
the .pot file.
Signed-off-by: Andrew Price <anprice(a)redhat.com>
---
gfs2/convert/gfs2_convert.c | 12 ++++++------
gfs2/fsck/initialize.c | 2 +-
gfs2/mkfs/main_grow.c | 2 +-
gfs2/mkfs/main_jadd.c | 10 +++++-----
gfs2/mkfs/main_mkfs.c | 2 +-
5 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/gfs2/convert/gfs2_convert.c b/gfs2/convert/gfs2_convert.c
index bb4e3a2..aac4853 100644
--- a/gfs2/convert/gfs2_convert.c
+++ b/gfs2/convert/gfs2_convert.c
@@ -1577,7 +1577,7 @@ static int init(struct gfs2_sbd *sbp, struct gfs2_options *opts)
sbp->bsize = sbp->sd_sb.sb_bsize;
sbp->rgtree.osi_node = NULL;
if (compute_constants(sbp)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
@@ -1599,13 +1599,13 @@ static int init(struct gfs2_sbd *sbp, struct gfs2_options *opts)
brelse(bh);
if (compute_heightsize(sbp->bsize, sbp->sd_heightsize, &sbp->sd_max_height,
sbp->bsize, sbp->sd_diptrs, sbp->sd_inptrs)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
if (compute_heightsize(sbp->bsize, sbp->sd_jheightsize, &sbp->sd_max_jheight,
sbp->sd_jbsize, sbp->sd_diptrs, sbp->sd_inptrs)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
/* -------------------------------------------------------- */
@@ -1616,13 +1616,13 @@ static int init(struct gfs2_sbd *sbp, struct gfs2_options *opts)
memset(gfs2_heightsize, 0, sizeof(gfs2_heightsize));
if (compute_heightsize(sbp->bsize, gfs2_heightsize, &gfs2_max_height,
sbp->bsize, sbp->sd_diptrs, gfs2_inptrs)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
memset(gfs2_jheightsize, 0, sizeof(gfs2_jheightsize));
if (compute_heightsize(sbp->bsize, gfs2_jheightsize, &gfs2_max_jheight,
sbp->sd_jbsize, sbp->sd_diptrs, gfs2_inptrs)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
@@ -2254,7 +2254,7 @@ int main(int argc, char **argv)
/* Now we've got to treat it as a gfs2 file system */
if (compute_constants(&sb2)) {
- log_crit(_("Error: Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(-1);
}
diff --git a/gfs2/fsck/initialize.c b/gfs2/fsck/initialize.c
index c052205..bb9755c 100644
--- a/gfs2/fsck/initialize.c
+++ b/gfs2/fsck/initialize.c
@@ -1301,7 +1301,7 @@ static int fill_super_block(struct gfs2_sbd *sdp)
}
if (compute_constants(sdp)) {
- log_crit(_("Bad constants (1)\n"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(FSCK_ERROR);
}
ret = read_sb(sdp);
diff --git a/gfs2/mkfs/main_grow.c b/gfs2/mkfs/main_grow.c
index 1115e5f..cc32585 100644
--- a/gfs2/mkfs/main_grow.c
+++ b/gfs2/mkfs/main_grow.c
@@ -381,7 +381,7 @@ int main(int argc, char *argv[])
sdp->sd_sb.sb_bsize = GFS2_DEFAULT_BSIZE;
sdp->bsize = sdp->sd_sb.sb_bsize;
if (compute_constants(sdp)) {
- perror(_("Bad constants (1)"));
+ log_crit("%s\n", _("Failed to compute file system constants"));
exit(EXIT_FAILURE);
}
if (read_sb(sdp) < 0) {
diff --git a/gfs2/mkfs/main_jadd.c b/gfs2/mkfs/main_jadd.c
index 739d964..de5d9c5 100644
--- a/gfs2/mkfs/main_jadd.c
+++ b/gfs2/mkfs/main_jadd.c
@@ -115,7 +115,7 @@ static void print_usage(const char *prog_name)
const char *option, *param, *desc;
const char *options[] = {
/* Translators: This is a usage string printed with --help.
- <size> and <number> here are to commandline parameters,
+ <size> and <number> here are the commandline parameters,
e.g. gfs2_jadd -j <number> /dev/sda */
"-c", "<size>", _("Size of quota change file, in megabytes"),
"-D", NULL, _("Enable debugging code"),
@@ -207,7 +207,7 @@ static void decode_arguments(int argc, char *argv[], struct gfs2_sbd *sdp, struc
die( _("Unrecognized argument: %s\n"), argv[optind]);
if (opts->debug) {
- printf( _("Command Line Arguments:\n"));
+ printf( _("Command line arguments:\n"));
printf(" qcsize = %u\n", sdp->qcsize);
printf(" jsize = %u\n", sdp->jsize);
printf(" journals = %u\n", sdp->md.journals);
@@ -234,8 +234,8 @@ static void print_results(struct jadd_opts *opts)
return;
printf( _("Filesystem: %s\n"), opts->path);
- printf( _("Old Journals: %u\n"), opts->orig_journals);
- printf( _("New Journals: %u\n"), opts->journals);
+ printf( _("Old journals: %u\n"), opts->orig_journals);
+ printf( _("New journals: %u\n"), opts->journals);
}
static int create_new_inode(struct jadd_opts *opts)
@@ -531,7 +531,7 @@ int main(int argc, char *argv[])
}
if (compute_constants(sdp)) {
- perror(_("Bad constants (1)"));
+ perror(_("Failed to compute file system constants"));
exit(EXIT_FAILURE);
}
find_current_journals(&opts);
diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
index 2590ec8..0636f0b 100644
--- a/gfs2/mkfs/main_mkfs.c
+++ b/gfs2/mkfs/main_mkfs.c
@@ -35,7 +35,7 @@ static void print_usage(const char *prog_name)
const char *option, *param, *desc;
const char *options[] = {
/* Translators: This is a usage string printed with --help.
- <size> and <number> here are to commandline parameters,
+ <size> and <number> here are the commandline parameters,
e.g. mkfs.gfs2 -b <size> -j <number> /dev/sda */
"-b", _("<size>"), _("File system block size, in bytes"),
"-c", _("<size>"), _("Size of quota change file, in megabytes"),
9 years, 1 month
gfs2-utils: RHEL7 - gfs2-utils build: Remove superfluous passive header checks
by Andrew Price
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=7442ec97...
Commit: 7442ec973039b525b3b643679c82516917b93c05
Parent: d039a5dccc1e21c60bd705e282ef81c753e947d0
Author: Andrew Price <anprice(a)redhat.com>
AuthorDate: Tue Mar 31 01:13:18 2015 +0100
Committer: Andrew Price <anprice(a)redhat.com>
CommitterDate: Wed Apr 1 16:52:44 2015 +0100
gfs2-utils build: Remove superfluous passive header checks
The configure script contained passive header and feature checks which
set variables depending on what they find, to be used to make code
portable, but the code does not use those checks. It also duplicated
some checks for standard headers which autoconf already does itself.
Remove the unneeded checks and speed up the configure script a bit.
Also remove some checks for headers which are no longer required (since
the cluster.git split) and remove some unused #includes which were
discovered along the way.
Signed-off-by: Andrew Price <anprice(a)redhat.com>
---
configure.ac | 39 +++++----------------------------------
gfs2/mkfs/main_grow.c | 3 ---
gfs2/mkfs/main_jadd.c | 1 -
3 files changed, 5 insertions(+), 38 deletions(-)
diff --git a/configure.ac b/configure.ac
index a41eb57..de96e5a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -110,46 +110,17 @@ if test -z "$ncurses_CFLAGS" && test -z "$ncurses_LIBS"; then
ncurses_LIBS=-lncurses
fi
-# external libs (no pkgconfig)
-check_lib_no_libs pthread pthread_mutex_lock
-
# Checks for header files.
-
-AC_CHECK_HEADERS([arpa/inet.h fcntl.h inttypes.h libintl.h limits.h locale.h mntent.h netdb.h netinet/in.h stddef.h stdint.h stdlib.h string.h sys/file.h sys/ioctl.h sys/mount.h sys/param.h sys/socket.h sys/time.h sys/vfs.h syslog.h termios.h unistd.h])
-
-AC_CHECK_HEADERS([linux/dlmconstants.h linux/limits.h linux/types.h linux/netlink.h linux/fs.h],,
- [AC_MSG_ERROR([Unable to find all required kernel headers.])])
-
+AC_CHECK_HEADERS([fcntl.h libintl.h limits.h locale.h mntent.h stddef.h sys/file.h sys/ioctl.h sys/mount.h sys/time.h sys/vfs.h syslog.h termios.h])
+AC_CHECK_HEADER([linux/fs.h], [], [AC_MSG_ERROR([Unable to find linux/fs.h])])
+AC_CHECK_HEADER([linux/types.h], [], [AC_MSG_ERROR([Unable to find linux/types.h])])
+AC_CHECK_HEADER([linux/limits.h], [], [AC_MSG_ERROR([Unable to find linux/limits.h])])
AC_CHECK_HEADER([linux/gfs2_ondisk.h], [], [AC_MSG_ERROR([Unable to find linux/gfs2_ondisk.h])])
AC_CHECK_MEMBER([struct gfs2_sb.sb_uuid], [], [], [[#include <linux/gfs2_ondisk.h>]])
AC_CHECK_MEMBER([struct gfs2_leaf.lf_inode],[AC_DEFINE([GFS2_HAS_LEAF_HINTS],[],[Leaf block hints])],
[], [[#include <linux/gfs2_ondisk.h>]])
-# Checks for typedefs, structures, and compiler characteristics.
-AC_C_INLINE
-AC_TYPE_INT64_T
-AC_TYPE_MODE_T
-AC_TYPE_OFF_T
-AC_TYPE_PID_T
-AC_TYPE_SIZE_T
-AC_TYPE_SSIZE_T
-AC_STRUCT_ST_BLOCKS
-AC_TYPE_UINT16_T
-AC_TYPE_UINT32_T
-AC_TYPE_UINT64_T
-AC_TYPE_UINT8_T
-
-# Checks for library functions.
-AC_FUNC_CHOWN
-AC_FUNC_FORK
-AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
-AC_HEADER_MAJOR
-AC_FUNC_MALLOC
-AC_FUNC_REALLOC
-AC_CHECK_FUNCS([ftruncate gettimeofday memset realpath rmdir select setlocale socket strcasecmp strchr strdup strerror strstr])
-
-## *FLAGS handling
-
+# *FLAGS handling
ENV_CFLAGS="$CFLAGS"
ENV_CPPFLAGS="$CPPFLAGS"
ENV_LDFLAGS="$LDFLAGS"
diff --git a/gfs2/mkfs/main_grow.c b/gfs2/mkfs/main_grow.c
index 6ba14b0..1115e5f 100644
--- a/gfs2/mkfs/main_grow.c
+++ b/gfs2/mkfs/main_grow.c
@@ -9,8 +9,6 @@
#include <dirent.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
-#include <sys/file.h>
-#include <sys/vfs.h>
#include <sys/mount.h>
#include <fcntl.h>
#include <unistd.h>
@@ -18,7 +16,6 @@
#include <errno.h>
#include <stdarg.h>
#include <linux/types.h>
-#include <linux/falloc.h>
#include <blkid.h>
#include <libintl.h>
#include <locale.h>
diff --git a/gfs2/mkfs/main_jadd.c b/gfs2/mkfs/main_jadd.c
index 9190d44..739d964 100644
--- a/gfs2/mkfs/main_jadd.c
+++ b/gfs2/mkfs/main_jadd.c
@@ -9,7 +9,6 @@
#include <dirent.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
-#include <sys/file.h>
#include <sys/vfs.h>
#include <sys/mount.h>
#include <fcntl.h>
9 years, 1 month