This looks strange. It's almost never correct do do a clear_inode() on an
inode in this manner: the clear_inode should be called when the inode is
free'd.
I've applied the patch, but I'd ask you to look a bit deeper: as far as I
can tell there might for example be a missing "fat_delete_inode()" call
somewhere.
The VFS layer will call the "delete" function on iput(), and if it doesn't
get called it may mean that:
- the inode counts are wrong for some reason
OR
- you haven't cleared "inode->i_nlink" when you marked the old inode
deleted, so the VFS layer doesn't know that it should call the delete
function..
The i_nlink thing looks like the more likely suspect.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html