2 bonnies can stop disk activity permanently

Bruce Evans bde at zeta.org.au
Sun Oct 8 15:25:01 PDT 2006

On Sun, 8 Oct 2006, R. B. Riddick wrote:

> Bruce wrote:
>> On Sun, 8 Oct 2006, Scott Long wrote:
>>> Kris Kennaway wrote:
>>>> You forgot to even mention what version you're running ;-)
>>>> Also show your kernel config file.  Configure DDB per the chapter on
>>> No need for all of that information, the bug in vfs_bio.c is quite obvious.
>>> =-(  Fixing it will take some thought, though.
>> Is it really obvious?  I think it is only obvious that many things are
>> not quite right.  The quick fix of increasing BKVASIZE to the size of
>> the largest buffer used should still work to prevent bkva fragmentation.
> OK: The FBSD version was varying: R6.1, R6.1-CURRENT, R7-CURRENT.
> But we just found out, that it happens when we use "newfs -b 65536", but not with default "-b" value (whatever that might be)...

That's certainly a good way to exercise bkva fragmentation.  I don't
know any other use for such a large block sizes in ffs :-).  Such a large
block size might be best for file systems with mainly very large files,
but the possible benefits are not large and might be smaller than the
extra overheads for defragmentation (even if it works).

The fragmentation can also be reduced by not using different block
sizes for different mounted file systems (including non-ffs ones)
once one of the sizes exceeds BKVASIZE.  Alternatively it can be
increased by doing the reverse.  I think "newfs -b 65536 -f 8192"
gives the bad mixture with different (ffs)block and (ffs)frag sizes.
"newfs -b 65536 -f 65536" usually gives very bad perfromance because
its frag size is to large.


More information about the freebsd-fs mailing list