gfs2-utils: master - gfs2_grow: report bad return codes on error

Bob Peterson rpeterso at fedoraproject.org
Thu Apr 25 18:58:43 UTC 2013


Gitweb:        http://git.fedorahosted.org/git/?p=gfs2-utils.git;a=commitdiff;h=457c8b6139c5c277db5a8b1a4a8d81aefeded05a
Commit:        457c8b6139c5c277db5a8b1a4a8d81aefeded05a
Parent:        4d4c96cbb24a58b54a198e01044e7cce161ea323
Author:        Bob Peterson <rpeterso at redhat.com>
AuthorDate:    Mon Dec 17 09:05:30 2012 -0600
Committer:     Bob Peterson <rpeterso at redhat.com>
CommitterDate: Thu Apr 25 11:57:30 2013 -0700

gfs2_grow: report bad return codes on error

This patch changes gfs2_grow so that if errors are encountered
during the gfs2_grow process, the return code for the command
will more accurately reflect the error. It will no longer report
a good return code if an error occurred.
---
 gfs2/mkfs/main_grow.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/gfs2/mkfs/main_grow.c b/gfs2/mkfs/main_grow.c
index c52f78d..73c7f84 100644
--- a/gfs2/mkfs/main_grow.c
+++ b/gfs2/mkfs/main_grow.c
@@ -322,6 +322,7 @@ main_grow(int argc, char *argv[])
 	struct gfs2_sbd sbd, *sdp = &sbd;
 	int rgcount, rindex_fd;
 	char rindex_name[PATH_MAX];
+	int error = EXIT_SUCCESS;
 
 	memset(sdp, 0, sizeof(struct gfs2_sbd));
 	sdp->bsize = GFS2_DEFAULT_BSIZE;
@@ -400,6 +401,7 @@ main_grow(int argc, char *argv[])
 		fssize = filesystem_size(sdp);
 		if (!sdp->rgtree.osi_node) {
 			log_err(_("Error: No resource groups found.\n"));
+			error = -EXIT_FAILURE;
 			goto out;
 		}
 		last_rgrp = (struct rgrp_tree *)osi_last(&sdp->rgtree);
@@ -413,8 +415,9 @@ main_grow(int argc, char *argv[])
 				(unsigned long long)fsgrowth / MB);
 			log_err( _("One resource group is %uMB for this file system.\n"),
 				(rgsize * sdp->bsize) / MB);
-		}
-		else {
+			error = -EXIT_FAILURE;
+			goto out;
+		} else {
 			int old_rg_count;
 
 			compute_rgrp_layout(sdp, &sdp->rgtree, TRUE);
@@ -433,4 +436,5 @@ main_grow(int argc, char *argv[])
 	close(sdp->path_fd);
 	sync();
 	log_notice( _("gfs2_grow complete.\n"));
+	exit(error);
 }


More information about the cluster-commits mailing list