From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3361 invoked by alias); 9 Sep 2009 15:05:47 -0000 Received: (qmail 3285 invoked by alias); 9 Sep 2009 15:05:47 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS X-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS X-Spam-Check-By: sourceware.org X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bastion2.fedora.phx.redhat.com Subject: cluster: STABLE2 - fsck.gfs2 unable to fix some rindex corruption for block size < 4K To: cluster-cvs-relay@redhat.com X-Project: Cluster Project X-Git-Module: cluster.git X-Git-Refname: refs/heads/STABLE2 X-Git-Reftype: branch X-Git-Oldrev: d47bcfe6acbef67357770faa1fb43353f81c7e86 X-Git-Newrev: 87c6039736fb05560f664d15cbb762936ba8b492 From: Bob Peterson Message-Id: <20090909150518.4D223120195@lists.fedorahosted.org> Date: Wed, 09 Sep 2009 15:05:00 -0000 X-Scanned-By: MIMEDefang 2.67 on 10.5.11.18 Mailing-List: contact cluster-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: cluster-cvs-owner@sourceware.org X-SW-Source: 2009-q3/txt/msg00329.txt.bz2 Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=87c6039736fb05560f664d15cbb762936ba8b492 Commit: 87c6039736fb05560f664d15cbb762936ba8b492 Parent: d47bcfe6acbef67357770faa1fb43353f81c7e86 Author: Bob Peterson AuthorDate: Wed Sep 9 09:51:36 2009 -0500 Committer: Bob Peterson CommitterDate: Wed Sep 9 10:00:43 2009 -0500 fsck.gfs2 unable to fix some rindex corruption for block size < 4K This patch fixes libgfs2 so that the superblock location is adjusted properly after the block size is known. That enables fsck.gfs2 to properly place the damaged first rindex entry. rhbz#520762 --- gfs2/libgfs2/super.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/gfs2/libgfs2/super.c b/gfs2/libgfs2/super.c index d521f99..ba3af34 100644 --- a/gfs2/libgfs2/super.c +++ b/gfs2/libgfs2/super.c @@ -106,6 +106,7 @@ int read_sb(struct gfs2_sbd *sdp) error = -1; } sdp->fssize = lseek(sdp->device_fd, 0, SEEK_END) / sdp->sd_sb.sb_bsize; + sdp->sb_addr = GFS2_SB_ADDR * GFS2_BASIC_BLOCK / sdp->bsize; out: