Lines Matching refs:weight
84 * The metaslab weight is used to encode the amount of free space in a
86 * metaslabs by weight. The weight (and therefore the "best" metaslab) can
88 * the free space in the metaslab (a space based weight) or by counting only
89 * the free segments of the largest size (a segment based weight). We prefer
90 * the segment based weight because it reflects how the free space is
94 * the segment weight by looking at each bucket in the histogram and
100 * Space-based weight:
111 * Segment-based weight:
123 #define WEIGHT_GET_ACTIVE(weight) BF64_GET((weight), 61, 3)
124 #define WEIGHT_SET_ACTIVE(weight, x) BF64_SET((weight), 61, 3, x)
126 #define WEIGHT_IS_SPACEBASED(weight) \
127 ((weight) == 0 || BF64_GET((weight), 60, 1))
128 #define WEIGHT_SET_SPACEBASED(weight) BF64_SET((weight), 60, 1, 1)
133 #define WEIGHT_GET_INDEX(weight) BF64_GET((weight), 54, 6)
134 #define WEIGHT_SET_INDEX(weight, x) BF64_SET((weight), 54, 6, x)
135 #define WEIGHT_GET_COUNT(weight) BF64_GET((weight), 0, 54)
136 #define WEIGHT_SET_COUNT(weight, x) BF64_SET((weight), 0, 54, x)
380 uint64_t ms_weight; /* weight vs. others in group */
381 uint64_t ms_activation_weight; /* activation weight */