All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Whitehouse <swhiteho@redhat.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH 5 of 5]Bz #248176: GFS2: invalid metadata block - TRY 3
Date: Wed, 25 Jul 2007 16:14:34 +0100	[thread overview]
Message-ID: <1185376474.8765.479.camel@quoit> (raw)
In-Reply-To: <1185375982.19934.9.camel@technetium.msp.redhat.com>

Hi,

Now in the -nmw git tree. Thanks,

Steve.

On Wed, 2007-07-25 at 10:06 -0500, Bob Peterson wrote:
> Okay, here is patch 5 again.  The difference between the patches that
> applied and those that didn't seems to be that git-diff worked and my
> normal diff didn't.  I used diff -pu to generate the "bad" patches,
> which had always worked for me in the past, so I'm not sure why it
> isn't now.  Perhaps someone can suggest additional parms to diff.
> ----------------------
> This is patch 5 of 5 for bug #248176
> 
> Metadata corruption was occurring because page references weren't
> being removed in all cases.  I previously added a function called
> detach_bufdata, but I discovered there already WAS a function out
> there to do the job.  It's called gfs2_meta_cache_flush.  So I added
> a call to that to remove the page references.
> Recently I had been thinking that this was entirely unnecessary, but
> when I removed the code, the metadata corruption problem returned
> immediately.
> --
> Signed-off-by: Bob Peterson <rpeterso@redhat.com> 
> --
>  fs/gfs2/log.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c
> index f7c0608..00ab6c0 100644
> --- a/fs/gfs2/log.c
> +++ b/fs/gfs2/log.c
> @@ -219,6 +219,7 @@ static void gfs2_ail2_empty_one(struct gfs2_sbd *sdp, struct gfs2_ail *ai)
>  {
>  	struct list_head *head = &ai->ai_ail2_list;
>  	struct gfs2_bufdata *bd;
> +	struct gfs2_inode *bh_ip;
>  
>  	while (!list_empty(head)) {
>  		bd = list_entry(head->prev, struct gfs2_bufdata,
> @@ -228,6 +229,8 @@ static void gfs2_ail2_empty_one(struct gfs2_sbd *sdp, struct gfs2_ail *ai)
>  		list_del(&bd->bd_ail_st_list);
>  		list_del(&bd->bd_ail_gl_list);
>  		atomic_dec(&bd->bd_gl->gl_ail_count);
> +		bh_ip = GFS2_I(bd->bd_bh->b_page->mapping->host);
> +		gfs2_meta_cache_flush(bh_ip);
>  		brelse(bd->bd_bh);
>  	}
>  }
> 
> 



      reply	other threads:[~2007-07-25 15:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-25 15:06 [Cluster-devel] [PATCH 5 of 5]Bz #248176: GFS2: invalid metadata block - TRY 3 Bob Peterson
2007-07-25 15:14 ` Steven Whitehouse [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1185376474.8765.479.camel@quoit \
    --to=swhiteho@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.