Fine tune filesystem block allocations under low free-space

conditions (-r254995) based on further operational experience.

Submitted by:  Dmitry Sivachenko
Fix Tested by: Dmitry Sivachenko
MFC after: 2 weeks
This commit is contained in:
Kirk McKusick 2013-12-30 17:04:24 +00:00
parent 9ccde11826
commit be1fd82346
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=260088

View File

@ -517,12 +517,12 @@ ffs_reallocblks_ufs1(ap)
fs = ip->i_fs;
ump = ip->i_ump;
/*
* If we are not tracking block clusters or if we have less than 2%
* If we are not tracking block clusters or if we have less than 4%
* free blocks left, then do not attempt to cluster. Running with
* less than 5% free block reserve is not recommended and those that
* choose to do so do not expect to have good file layout.
*/
if (fs->fs_contigsumsize <= 0 || freespace(fs, 2) < 0)
if (fs->fs_contigsumsize <= 0 || freespace(fs, 4) < 0)
return (ENOSPC);
buflist = ap->a_buflist;
len = buflist->bs_nchildren;
@ -744,12 +744,12 @@ ffs_reallocblks_ufs2(ap)
fs = ip->i_fs;
ump = ip->i_ump;
/*
* If we are not tracking block clusters or if we have less than 2%
* If we are not tracking block clusters or if we have less than 4%
* free blocks left, then do not attempt to cluster. Running with
* less than 5% free block reserve is not recommended and those that
* choose to do so do not expect to have good file layout.
*/
if (fs->fs_contigsumsize <= 0 || freespace(fs, 2) < 0)
if (fs->fs_contigsumsize <= 0 || freespace(fs, 4) < 0)
return (ENOSPC);
buflist = ap->a_buflist;
len = buflist->bs_nchildren;