Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=f2d6124acc…
Commit: f2d6124acc5b185d2674171df3deb6077a35111b
Parent: d6b100b8e2315ab6e072f02bf63a1aacefda6f7d
Author: Abhi Das <adas(a)redhat.com>
AuthorDate: Tue Mar 25 22:28:45 2014 -0500
Committer: Abhi Das <adas(a)redhat.com>
CommitterDate: Tue Mar 25 22:34:13 2014 -0500
fsck.gfs2: fix corner case sb_seg_size correction for single journal fs
Spotted an error in the single journal sb_seg_size correction. This
patch fixes it and is an addendum patch to the previous two patches
posted for this bz1053668
Resolves: rhbz#1079507
Signed-off-by: Abhi Das <adas(a)redhat.com>
---
gfs2/fsck/initialize.c | 22 +++++++++++++++-------
1 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/gfs2/fsck/initialize.c b/gfs2/fsck/initialize.c
index 33cf85b..9ada7d2 100644
--- a/gfs2/fsck/initialize.c
+++ b/gfs2/fsck/initialize.c
@@ -1414,14 +1414,22 @@ static int correct_journal_seg_size(struct gfs2_sbd *sdp)
}
gfs_jindex_in(&ji_0, buf);
- if (sdp->md.journals == 1 && sbd1->sb_seg_size == 0) {
- if (!query(_("The gfs2 journal segment size is 0 and a correct value\n"
- "cannot be determined in a single-journal filesystem.\n"
- "Continue with default? (y/n) "))) {
- log_crit(_("Error: Cannot proceed without a valid sb_seg_size value.\n"));
- return -1;
+ if (sdp->md.journals == 1) {
+ if (sbd1->sb_seg_size == 0) {
+ if (!query(_("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) "))) {
+ log_crit(_("Error: Cannot proceed without a valid"
+ " sb_seg_size value.\n"));
+ return -1;
+ }
+ goto out;
}
- goto out;
+ /* Don't mess with sb_seg_size because we don't know what
+ * it needs to be
+ */
+ return 0;
}
count = gfs2_readi(sdp->md.jiinode, buf, sizeof(struct gfs_jindex),
Gitweb: http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=c6d2155f68…
Commit: c6d2155f68d45e603d772884fc75f53e7b651d9f
Parent: d394637d9c6586d8bb5a872f8763b90720f81500
Author: Abhi Das <adas(a)redhat.com>
AuthorDate: Tue Mar 25 22:28:45 2014 -0500
Committer: Abhi Das <adas(a)redhat.com>
CommitterDate: Tue Mar 25 22:28:45 2014 -0500
fsck.gfs2: fix corner case sb_seg_size correction for single journal fs
Spotted an error in the single journal sb_seg_size correction. This
patch fixes it and is an addendum patch to the previous two patches
posted for this bz1053668
Resolves: rhbz#1053668
Signed-off-by: Abhi Das <adas(a)redhat.com>
---
gfs2/fsck/initialize.c | 22 +++++++++++++++-------
1 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/gfs2/fsck/initialize.c b/gfs2/fsck/initialize.c
index 33cf85b..9ada7d2 100644
--- a/gfs2/fsck/initialize.c
+++ b/gfs2/fsck/initialize.c
@@ -1414,14 +1414,22 @@ static int correct_journal_seg_size(struct gfs2_sbd *sdp)
}
gfs_jindex_in(&ji_0, buf);
- if (sdp->md.journals == 1 && sbd1->sb_seg_size == 0) {
- if (!query(_("The gfs2 journal segment size is 0 and a correct value\n"
- "cannot be determined in a single-journal filesystem.\n"
- "Continue with default? (y/n) "))) {
- log_crit(_("Error: Cannot proceed without a valid sb_seg_size value.\n"));
- return -1;
+ if (sdp->md.journals == 1) {
+ if (sbd1->sb_seg_size == 0) {
+ if (!query(_("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) "))) {
+ log_crit(_("Error: Cannot proceed without a valid"
+ " sb_seg_size value.\n"));
+ return -1;
+ }
+ goto out;
}
- goto out;
+ /* Don't mess with sb_seg_size because we don't know what
+ * it needs to be
+ */
+ return 0;
}
count = gfs2_readi(sdp->md.jiinode, buf, sizeof(struct gfs_jindex),
Gitweb: http://git.fedorahosted.org/git/?p=cluster.git;a=commitdiff;h=760542a89d84c…
Commit: 760542a89d84cb0fb5683f60afd66c94eb696e00
Parent: fde6e0e3a1fc1dac3b95d7cd96315bb2231ccfd5
Author: Christine Caulfield <ccaulfie(a)redhat.com>
AuthorDate: Mon Mar 24 15:26:23 2014 +0000
Committer: Christine Caulfield <ccaulfie(a)redhat.com>
CommitterDate: Mon Mar 24 15:26:23 2014 +0000
qdisk: Make qdiskd warn if not all nodes are running qdiskd
Resolves: rhbz#994187
Signed-off-by: Christine Caulfield <ccaulfie(a)redhat.com>
---
cman/qdisk/main.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/cman/qdisk/main.c b/cman/qdisk/main.c
index 1873a05..6ee50fe 100644
--- a/cman/qdisk/main.c
+++ b/cman/qdisk/main.c
@@ -579,6 +579,7 @@ check_cman(qd_ctx *ctx, memb_mask_t mask, memb_mask_t master_mask)
{
cman_node_t nodes[MAX_NODES_DISK];
int retnodes, x;
+ static unsigned int check_cycle = 0;
if (cman_get_nodes(ctx->qc_ch_admin, MAX_NODES_DISK,
&retnodes, nodes) <0 )
@@ -586,6 +587,18 @@ check_cman(qd_ctx *ctx, memb_mask_t mask, memb_mask_t master_mask)
memset(master_mask, 0, sizeof(master_mask));
for (x = 0; x < retnodes; x++) {
+ /* See if the other node is running cman and not qdiskd.
+ * Just do this every 4 times (seconds) so we don't spam syslog
+ * too much. cman_is_listening() can return EBUSY which means
+ * "I don't know". We don't worry about this, and just report
+ * at the next check by which time it will.
+ */
+ check_cycle = (check_cycle + 1) % 4;
+ if ((check_cycle == 1) &&
+ (cman_is_listening(ctx->qc_ch_admin, nodes[x].cn_nodeid,
+ CLUSTER_PORT_QDISKD) == 0)) {
+ clulog(LOG_NOTICE, "node %s is up but not running qdiskd\n", nodes[x].cn_name);
+ }
if (is_bit_set(mask, nodes[x].cn_nodeid-1, sizeof(mask)) &&
nodes[x].cn_member) {
set_bit(master_mask, nodes[x].cn_nodeid-1,