Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 9383e745e23602bc45f9c92184feea59 > files > 58

gfs2-utils-0.1.62-28.el5.src.rpm

commit 7704574fe2fc2cc831f3cb46f8fca526c09c6d4b
Author: Bob Peterson <bob@ganesha.peterson>
Date:   Mon Jan 25 14:58:36 2010 -0600

    fsck.gfs2: Free, don't invalidate, dinodes with bad depth
    
    This patch makes fsck.gfs2 free up dinodes with an invalid depth
    rather than marking them invalid.  If we mark them invalid, the
    invalid depth itself will confuse the code that later tries to free
    the metadata associated with the bad dinode.
    
    rhbz#455300

diff --git a/gfs2/fsck/pass1.c b/gfs2/fsck/pass1.c
index 9fce798..5b3b032 100644
--- a/gfs2/fsck/pass1.c
+++ b/gfs2/fsck/pass1.c
@@ -1055,7 +1055,7 @@ static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh)
 				 ip->i_di.di_depth,
 				 (1 >> (ip->i_di.di_size/sizeof(uint64_t))));
 			if(fsck_blockmap_set(ip, block, _("bad depth"),
-					     gfs2_meta_inval)) {
+					     gfs2_block_free)) {
 				stack;
 				fsck_inode_put(&ip);
 				return -1;