Re: [PATCH] Btrfs: take block group fragmentation into account for allocation

jim owens
2009-03-09T17:29:02Z

Josef Bacik wrote:
> On Mon, Mar 09, 2009 at 03:21:06PM -0000, Oliver Mattos wrote:
>>> So the idea of the function is to return an integer in the range
>>> [0,100]?
>> Why are we using a range of 0 to 100 anyway? 100 seems like an arbitary
>> value for kernel space - why not just keep it as a value in the range
>> [0,2^32) ? That eliminates the arbitary constant of 100, and in some
>> cases could reduce the effects of rounding and allow finer control at no
>> additional expense.
>>
>
> Its not arbitrary, its a percentage, so 0-100 percent.

True, however the decision to use a percentage scheme is arbitrary.

For triggers like this it is just as good to pick points
like 1/8 (12.5%) or 1/4 (25%) that can be calculated without
doing division. Forgetting the 32 bit architecture problem,
many architectures are really slow at divide so it is better
to not use them unless it adds real value. Other than percent
being easy to document, what is the justification for percent.

jim