|
@@ -44,42 +44,7 @@ static inline int ceph_frag_contains_value(__u32 f, __u32 v)
|
|
|
{
|
|
|
return (v & ceph_frag_mask(f)) == ceph_frag_value(f);
|
|
|
}
|
|
|
-static inline int ceph_frag_contains_frag(__u32 f, __u32 sub)
|
|
|
-{
|
|
|
- /* is sub as specific as us, and contained by us? */
|
|
|
- return ceph_frag_bits(sub) >= ceph_frag_bits(f) &&
|
|
|
- (ceph_frag_value(sub) & ceph_frag_mask(f)) == ceph_frag_value(f);
|
|
|
-}
|
|
|
|
|
|
-static inline __u32 ceph_frag_parent(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_make(ceph_frag_bits(f) - 1,
|
|
|
- ceph_frag_value(f) & (ceph_frag_mask(f) << 1));
|
|
|
-}
|
|
|
-static inline int ceph_frag_is_left_child(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_bits(f) > 0 &&
|
|
|
- (ceph_frag_value(f) & (0x1000000 >> ceph_frag_bits(f))) == 0;
|
|
|
-}
|
|
|
-static inline int ceph_frag_is_right_child(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_bits(f) > 0 &&
|
|
|
- (ceph_frag_value(f) & (0x1000000 >> ceph_frag_bits(f))) == 1;
|
|
|
-}
|
|
|
-static inline __u32 ceph_frag_sibling(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_make(ceph_frag_bits(f),
|
|
|
- ceph_frag_value(f) ^ (0x1000000 >> ceph_frag_bits(f)));
|
|
|
-}
|
|
|
-static inline __u32 ceph_frag_left_child(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_make(ceph_frag_bits(f)+1, ceph_frag_value(f));
|
|
|
-}
|
|
|
-static inline __u32 ceph_frag_right_child(__u32 f)
|
|
|
-{
|
|
|
- return ceph_frag_make(ceph_frag_bits(f)+1,
|
|
|
- ceph_frag_value(f) | (0x1000000 >> (1+ceph_frag_bits(f))));
|
|
|
-}
|
|
|
static inline __u32 ceph_frag_make_child(__u32 f, int by, int i)
|
|
|
{
|
|
|
int newbits = ceph_frag_bits(f) + by;
|