<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
From: Mingming Cao &lt;cmm@us.ibm.com&gt;

Thanks Badari!! The easiest fix is checking whether it is a bad inode in
ext3_clear_inode() (like what ext2_put_inode() does):



---

 25-akpm/fs/ext3/super.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

diff -puN fs/ext3/super.c~ext3-reservation-bad-inode-fix fs/ext3/super.c
--- 25/fs/ext3/super.c~ext3-reservation-bad-inode-fix	2004-05-03 18:10:50.790725632 -0700
+++ 25-akpm/fs/ext3/super.c	2004-05-03 18:10:50.795724872 -0700
@@ -507,7 +507,8 @@ static void ext3_clear_inode(struct inod
                EXT3_I(inode)-&gt;i_default_acl = EXT3_ACL_NOT_CACHED;
        }
 #endif
-	ext3_discard_reservation(inode);
+	if (!is_bad_inode(inode))
+		ext3_discard_reservation(inode);
 }
 
 #ifdef CONFIG_QUOTA

_
</pre></body></html>