Hi, looks good to me,
Steve. On Fri, 2012-02-17 at 15:56 +0000, Andrew Price wrote: > Currently gfs2_edit complains that it doesn't know what 'master' means > when it can't find the master directory. This patch catches the case > where the master directory hasn't been found and reports the error more > clearly to the user. It also updates a terse 'out of space' error > message in blk_alloc_i to be more clear. > > rhbz#742293 > > Signed-off-by: Andrew Price <anpr...@redhat.com> > --- > gfs2/edit/hexedit.c | 10 +++++++--- > gfs2/libgfs2/fs_ops.c | 2 +- > 2 files changed, 8 insertions(+), 4 deletions(-) > > diff --git a/gfs2/edit/hexedit.c b/gfs2/edit/hexedit.c > index 4b992de..69d1940 100644 > --- a/gfs2/edit/hexedit.c > +++ b/gfs2/edit/hexedit.c > @@ -1700,10 +1700,14 @@ uint64_t check_keywords(const char *kword) > else if (!strcmp(kword, "root") || !strcmp(kword, "rootdir")) > blk = sbd.sd_sb.sb_root_dir.no_addr; > else if (!strcmp(kword, "master")) { > - if (!sbd.gfs1) > - blk = sbd.sd_sb.sb_master_dir.no_addr; > - else > + if (sbd.gfs1) > fprintf(stderr, "This is GFS1; there's no master > directory.\n"); > + else if (!sbd.sd_sb.sb_master_dir.no_addr) { > + fprintf(stderr, "GFS2 master directory not found on > %s\n", > + > sbd.device_name); > + exit(-1); > + } else > + blk = sbd.sd_sb.sb_master_dir.no_addr; > } > else if (!strcmp(kword, "jindex")) { > if (sbd.gfs1) > diff --git a/gfs2/libgfs2/fs_ops.c b/gfs2/libgfs2/fs_ops.c > index def6f80..a72394f 100644 > --- a/gfs2/libgfs2/fs_ops.c > +++ b/gfs2/libgfs2/fs_ops.c > @@ -137,7 +137,7 @@ static uint64_t blk_alloc_i(struct gfs2_sbd *sdp, > unsigned int type) > } > > if (n == NULL) { > - fprintf(stderr, "out of space\n"); > + fprintf(stderr, "Not enough space available on device\n"); > exit(1); > } >