]> git.baikalelectronics.ru Git - kernel.git/commit
btrfs: fix inode rbtree corruption
authorFrom: Nick Piggin <npiggin@suse.de>
Fri, 21 Aug 2009 08:09:44 +0000 (10:09 +0200)
committerJens Axboe <jens.axboe@oracle.com>
Fri, 21 Aug 2009 08:09:44 +0000 (10:09 +0200)
commit658f07ef5c050c14ce2d4a28459e64080b6e515f
tree9a6e6fe663bfc5f01edac558433f314657c2eb67
parent35931f269e1d29fe147af7de214d34c94de147c6
btrfs: fix inode rbtree corruption

Node may not be inserted over existing node. This causes inode tree
corruption and I was seeing crashes in inode_tree_del which I can not
reproduce after this patch.

The other way to fix this would be to tie inode lifetime in the rbtree
with inode while not in freeing state. I had a look at this but it is
not so trivial at this point. At least this patch gets things working again.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Cc: Chris Mason <chris.mason@oracle.com>
Acked-by: Yan Zheng <zheng.yan@oracle.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
fs/btrfs/inode.c