]> git.neil.brown.name Git - history.git/commitdiff
[PATCH] reiserfs: ignore prepared and locked buffers
authorAndrew Morton <akpm@osdl.org>
Mon, 26 Apr 2004 15:55:41 +0000 (08:55 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Mon, 26 Apr 2004 15:55:41 +0000 (08:55 -0700)
From: Chris Mason <mason@suse.com>

block_write_full_page might see and lock clean metadata buffers, which leads
to bogus vs-12339 messages.  Change the message to ignore bh locked.

fs/reiserfs/do_balan.c

index 60baf14b580b68b64589707cc35fd6febf4f6901..05eff4d07804101dd46076dde7a097cb4a2a5247 100644 (file)
@@ -1343,7 +1343,8 @@ static void check_internal_node (struct super_block * s, struct buffer_head * bh
 
 static int locked_or_not_in_tree (struct buffer_head * bh, char * which)
 {
-  if ( buffer_locked (bh) || !B_IS_IN_TREE (bh) ) {
+  if ( (!reiserfs_buffer_prepared(bh) && buffer_locked (bh)) ||
+        !B_IS_IN_TREE (bh) ) {
     reiserfs_warning ("vs-12339: locked_or_not_in_tree: %s (%b)\n", which, bh);
     return 1;
   }