On Fri, 2006-07-07 at 19:49 +0200, Jan Kara wrote:
>   Hi,
> 
>   just one note: I've looked to the in scan_bitmap() in bitmap.c. There is:
>         /* When the bitmap is more than 10% free, anyone can allocate.
>          * When it's less than 10% free, only files that already use the
>          * bitmap are allowed. Once we pass 80% full, this restriction
>          * is lifted.
>          *
>          * We do this so that files that grow later still have space
>          * close to
>          * their original allocation. This improves locality, and
>          * presumably
>          * performance as a result.
>          *
>          * This is only an allocation policy and does not make up for
>          * getting a
>          * bad hint. Decent hinting must be implemented for this to work
>          * well.
>          */
>         if (TEST_OPTION(skip_busy, s)
>             && SB_FREE_BLOCKS(s) > SB_BLOCK_COUNT(s) / 20) {
> 
>    So the comment suggests we should lift the restriction when we are 80%
> full but if you see the condition, it checks wherher we are 95% full! I
> guess that is really asking for trouble and could explain the
> behaviour...
>   Mike could you try changing that 20 in the test to 5? IMHO that could
> fix your problem.

I've recompiled my kernel with this suggested change, and so far I have
surpassed (just barely) the free space "trigger" point that occurred
twice yesterday. 

I'll keep the recordings going so I can give you guys more conclusive
results in a couple hours.

-- 
Mike Benoit <[EMAIL PROTECTED]>

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to