cluster: RHEL6 - dirent_repair needs to mark the buffer as modified

Bob Peterson rpeterso at fedoraproject.org
Tue Jan 24 20:45:41 UTC 2012


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=f5da0eb475b287a1bc4227b54c87083878490c72
Commit:        f5da0eb475b287a1bc4227b54c87083878490c72
Parent:        5cacd15160d57c57e76b6defdd701460c296b8c9
Author:        Bob Peterson <rpeterso at redhat.com>
AuthorDate:    Mon Aug 8 14:47:49 2011 -0500
Committer:     Bob Peterson <rpeterso at redhat.com>
CommitterDate: Fri Jan 20 08:26:26 2012 -0600

dirent_repair needs to mark the buffer as modified

This patch adds a call to bmodified to function dirent_repair.  Without
setting the modified bit, directory repairs may be forgotten and never
written back to disk, leaving the damage in place.

rhbz#675723
---
 gfs2/fsck/metawalk.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/gfs2/fsck/metawalk.c b/gfs2/fsck/metawalk.c
index 888acec..94de22a 100644
--- a/gfs2/fsck/metawalk.c
+++ b/gfs2/fsck/metawalk.c
@@ -264,6 +264,7 @@ static int dirent_repair(struct gfs2_inode *ip, struct gfs2_buffer_head *bh,
 		de->de_rec_len = GFS2_DIRENT_SIZE(de->de_name_len);
 	}
 	gfs2_dirent_out(de, (char *)dent);
+	bmodified(bh);
 	return 0;
 }
 


More information about the cluster-commits mailing list