When things didn't match up that was a clue that either
- the benchmark was broken
- the code was broken
[...]
I would carry out an object-oriented dualism here.
[1] methods (kernel module) [2] objects (formatted partition)
||
|
Currently orphan cleanup only ever gets triggered if we cross subvolumes during
a lookup, which means that if we just mount a plain jane fs that has orphans in
it, they will never get cleaned up. This results in panic's like these
http://www.kerneloops.org/oops.php?number=1109085
where adding an
Fix bug reported by Johannes Hirte. The reason of that bug
is btrfs_del_items is called after btrfs_duplicate_item and
btrfs_del_items triggers tree balance. The fix is check that
case and call btrfs_search_slot when needed.
Signed-off-by: Yan Zheng
---
diff -urp 1/fs/btrfs/file.c 2/fs/btrfs/fil