Hi, Looks good to me,
Steve. On Tue, 2011-10-04 at 11:49 -0300, Carlos Maiolino wrote: > This patch fixes some error handling into gfs2_grow, > but also fix some strings to be complaing with i18n. > Also, it fixes 2 perror calls from mkfs, removing > new-line characters (\n) from the perror() call, since > perror() should be called without any format character > > Signed-off-by: Carlos Maiolino <cmaiol...@redhat.com> > --- > gfs2/mkfs/main_grow.c | 52 ++++++++++++++++++++---------------------------- > gfs2/mkfs/main_mkfs.c | 4 +- > 2 files changed, 24 insertions(+), 32 deletions(-) > > diff --git a/gfs2/mkfs/main_grow.c b/gfs2/mkfs/main_grow.c > index 7a32d7e..c48497f 100644 > --- a/gfs2/mkfs/main_grow.c > +++ b/gfs2/mkfs/main_grow.c > @@ -202,7 +202,7 @@ static void fix_rindex(struct gfs2_sbd *sdp, int > rindex_fd, int old_rg_count) > buf = calloc(1, writelen); > if (buf == NULL) { > perror(__FUNCTION__); > - exit(-1); > + exit(EXIT_FAILURE); > } > /* Now add the new rg entries to the rg index. Here we */ > /* need to use the gfs2 kernel code rather than the libgfs2 */ > @@ -219,13 +219,13 @@ static void fix_rindex(struct gfs2_sbd *sdp, int > rindex_fd, int old_rg_count) > fsync(sdp->device_fd); > if (!test) { > if (fstat(rindex_fd, &statbuf) != 0) { > - log_crit("Can't stat rindex : %s\n", strerror(errno)); > + perror("rindex"); > goto out; > } > if (statbuf.st_size != > old_rg_count * sizeof(struct gfs2_rindex)) { > - log_crit("Incorrect rindex size. want %ld(%d RGs), " > - "have %ld\n", > + log_crit(_("Incorrect rindex size. want %ld(%d RGs), " > + "have %ld\n"), > old_rg_count * sizeof(struct gfs2_rindex), > old_rg_count, statbuf.st_size); > goto out; > @@ -234,8 +234,8 @@ static void fix_rindex(struct gfs2_sbd *sdp, int > rindex_fd, int old_rg_count) > lseek(rindex_fd, 0, SEEK_END); > count = write(rindex_fd, buf, sizeof(struct gfs2_rindex)); > if (count != sizeof(struct gfs2_rindex)) { > - log_crit("Error writing first new rindex entry;" > - "aborted.\n"); > + log_crit(_("Error writing first new rindex entry;" > + "aborted.\n")); > if (count > 0) > goto trunc; > else > @@ -244,16 +244,15 @@ static void fix_rindex(struct gfs2_sbd *sdp, int > rindex_fd, int old_rg_count) > count = write(rindex_fd, buf + sizeof(struct gfs2_rindex), > writelen - sizeof(struct gfs2_rindex)); > if (count != writelen - sizeof(struct gfs2_rindex)) { > - log_crit("Error writing new rindex entries;" > - "aborted.\n"); > + log_crit(_("Error writing new rindex entries;" > + "aborted.\n")); > if (count > 0) > goto trunc; > else > goto out; > } > if (fallocate(rindex_fd, FALLOC_FL_KEEP_SIZE, statbuf.st_size + > writelen, sizeof(struct gfs2_rindex)) != 0) > - log_crit("Error fallocating extra space : %s\n", > - strerror(errno)); > + perror("fallocate"); > fsync(rindex_fd); > } > out: > @@ -261,7 +260,7 @@ out: > return; > trunc: > count = (count / sizeof(struct gfs2_rindex)) + old_rg_count; > - log_crit("truncating rindex to %ld\n", > + log_crit(_("truncating rindex to %ld\n"), > (off_t)count * sizeof(struct gfs2_rindex)); > ftruncate(rindex_fd, (off_t)count * sizeof(struct gfs2_rindex)); > free(buf); > @@ -312,26 +311,20 @@ main_grow(int argc, char *argv[]) > sdp->path_name = argv[optind++]; > sdp->path_fd = open(sdp->path_name, O_RDONLY | O_CLOEXEC); > if (sdp->path_fd < 0) > - die("can't open root directory %s: %s\n", > - sdp->path_name, strerror(errno)); > + perror(sdp->path_name); > > if (check_for_gfs2(sdp)) { > - if (errno == EINVAL) > - fprintf(stderr, > - _("Not a valid GFS2 mount point: %s\n"), > - sdp->path_name); > - else > - fprintf(stderr, "%s\n", strerror(errno)); > - exit(-1); > + perror(sdp->path_name); > + exit(EXIT_FAILURE); > } > sdp->device_fd = open(sdp->device_name, > (test ? O_RDONLY : O_RDWR) | O_CLOEXEC); > if (sdp->device_fd < 0) > - die( _("can't open device %s: %s\n"), > - sdp->device_name, strerror(errno)); > + perror(sdp->device_name); > + > if (device_geometry(sdp)) { > - fprintf(stderr, _("Geometry error\n")); > - exit(-1); > + perror(_("Device geometry error")); > + exit(EXIT_FAILURE); > } > log_info( _("Initializing lists...\n")); > sdp->rgtree.osi_node = NULL; > @@ -340,8 +333,8 @@ main_grow(int argc, char *argv[]) > sdp->sd_sb.sb_bsize = GFS2_DEFAULT_BSIZE; > sdp->bsize = sdp->sd_sb.sb_bsize; > if (compute_constants(sdp)) { > - log_crit(_("Bad constants (1)\n")); > - exit(-1); > + perror(_("Bad constants (1)")); > + exit(EXIT_FAILURE); > } > if (read_sb(sdp, 0) < 0) > die( _("gfs: Error reading superblock.\n")); > @@ -349,13 +342,12 @@ main_grow(int argc, char *argv[]) > if (fix_device_geometry(sdp)) { > fprintf(stderr, _("Device is too small (%llu bytes)\n"), > (unsigned long long)sdp->device.length << > GFS2_BASIC_BLOCK_SHIFT); > - exit(-1); > + exit(EXIT_FAILURE); > } > > if (mount_gfs2_meta(sdp)) { > - fprintf(stderr, _("Error mounting GFS2 metafs: %s\n"), > - strerror(errno)); > - exit(-1); > + perror("GFS2 metafs"); > + exit(EXIT_FAILURE); > } > > sprintf(rindex_name, "%s/rindex", sdp->metafs_path); > diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c > index f35f5b0..771feba 100644 > --- a/gfs2/mkfs/main_mkfs.c > +++ b/gfs2/mkfs/main_mkfs.c > @@ -591,7 +591,7 @@ void main_mkfs(int argc, char *argv[]) > verify_bsize(sdp); > > if (compute_constants(sdp)) { > - perror(_("Bad constants (1)\n")); > + perror(_("Bad constants (1)")); > exit(EXIT_FAILURE); > } > > @@ -599,7 +599,7 @@ void main_mkfs(int argc, char *argv[]) > > device_size(sdp->device_fd, &real_device_size); > if (device_geometry(sdp)) { > - perror(_("Device geometry error\n")); > + perror(_("Device geometry error")); > exit(EXIT_FAILURE); > } > /* Convert optional block-count to basic blocks */