If get_sb() fails because of EOF, it will return with retval 1, which will then be interpreted as XR_BAD_MAGIC("bad magic number") in phase1() when warning the user. This patch fix it by using XR_EOF here, so it would be interpreted correctly. Also change the associated comments about the return value. Signed-off-by: Li Zhong <zhong@xxxxxxxxxxxxxxxxxx> --- repair/sb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/repair/sb.c b/repair/sb.c index d34d7a2..2e35a4c 100644 --- a/repair/sb.c +++ b/repair/sb.c @@ -665,7 +665,7 @@ get_sb_geometry(fs_geometry_t *geo, xfs_sb_t *sbp) * primary and compare the geometries in the secondaries against * the geometry indicated by the primary. * - * returns 1 if bad, 0 if ok + * returns 0 if ok, else error code (XR_EOF, XR_INSUFF_SEC_SB, etc). */ int verify_set_primary_sb(xfs_sb_t *rsb, @@ -732,7 +732,7 @@ verify_set_primary_sb(xfs_sb_t *rsb, checked[agno] = 1; if (get_sb(sb, off, size, agno) == XR_EOF) { - retval = 1; + retval = XR_EOF; goto out_free_list; } -- 1.8.1.4 _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs