Re: [PATCH] Btrfs: cleanup for __merge_refs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, October 18, 2012 at 09:10 (+0200), Liu Bo wrote:
> Parents must be same after going through ref_for_same_block.

Well. We could kill that for the moment. However, ref_for_same_block wasn't
meant to check for the parent. We should do ...

--- a/fs/btrfs/backref.c
+++ b/fs/btrfs/backref.c
@@ -400,8 +400,6 @@ static inline int ref_for_same_block(struct __prelim_ref *ref1,
                return 0;
        if (ref1->key_for_search.offset != ref2->key_for_search.offset)
                return 0;
-       if (ref1->parent != ref2->parent)
-               return 0;

        return 1;
 }

Those two lines were originally added while debugging. The idea was to merge
indirect (parent == 0) and shared backrefs (parent != 0) to avoid the expensive
tree search for indirect backrefs when possible.

We would need extensive testing to remove those two lines from the current
version, though...

-Jan
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux