On Wed, 2004-12-08 at 08:20 -0600, Dave Kleikamp wrote:
> Here is a patch that should get you by this specific error,
I bet you'd rather have a patch that compiles. Apply this one instead.
--
David Kleikamp
IBM Linux Technology Center
Index: jfsutils/fsck/fsckmeta.c
===================================================================
RCS file: /usr/cvs/jfs/jfsutils/fsck/fsckmeta.c,v
retrieving revision 1.19
diff -u -p -r1.19 fsckmeta.c
--- jfsutils/fsck/fsckmeta.c 24 Sep 2004 14:43:53 -0000 1.19
+++ jfsutils/fsck/fsckmeta.c 8 Dec 2004 14:27:45 -0000
@@ -1370,8 +1370,9 @@ int validate_fs_metadata()
intermed_rc = inode_get(aggregate_inode, which_fsit, ino_idx, &ino_ptr);
if (intermed_rc != FSCK_OK) {
/* can't get the inode */
- vfm_rc = FSCK_CANTREADFSEXT;
- goto vfm_exit;
+ //vfm_rc = FSCK_CANTREADFSEXT;
+ //goto vfm_exit;
+ goto read_root; /* Who really cares? */
}
/* got superinode extension inode */
@@ -1379,14 +1380,16 @@ int validate_fs_metadata()
intermed_rc = verify_fs_super_ext(ino_ptr, msg_info_ptr,&inode_updated);
if (intermed_rc < 0) {
/* something really really bad happened */
- vfm_rc = intermed_rc;
- goto vfm_exit;
+ //vfm_rc = intermed_rc;
+ //goto vfm_exit;
+ goto read_root;
}
if (intermed_rc != FSCK_OK) {
/* inode is bad */
- vfm_rc = FSCK_FSETEXTBAD;
- goto vfm_exit;
+ //vfm_rc = FSCK_FSETEXTBAD;
+ //goto vfm_exit;
+ goto read_root;
}
/* superinode extension inode is ok */
@@ -1394,9 +1397,9 @@ int validate_fs_metadata()
/* need to write the superinode extension */
vfm_rc = inode_put(ino_ptr);
}
- if (vfm_rc != FSCK_OK)
- goto vfm_exit;
-
+ //if (vfm_rc != FSCK_OK)
+ // goto vfm_exit;
+read_root:
/* read the root directory inode */
ino_idx = ROOT_I;
intermed_rc = inode_get(aggregate_inode, which_fsit, ino_idx,