diff options
author | mckusick <mckusick@FreeBSD.org> | 2002-10-22 01:14:25 +0000 |
---|---|---|
committer | mckusick <mckusick@FreeBSD.org> | 2002-10-22 01:14:25 +0000 |
commit | a515fcf789d48d52262122aef25ce2bafcf856e0 (patch) | |
tree | 4c2b95865bcf2b11cee7058fcd9ff5a548694644 /lib/libc | |
parent | 76a6cc0dc172d9a26b57c6064948c52bb19a87e5 (diff) | |
download | FreeBSD-src-a515fcf789d48d52262122aef25ce2bafcf856e0.zip FreeBSD-src-a515fcf789d48d52262122aef25ce2bafcf856e0.tar.gz |
This update is a performance improvement when allocating blocks on
a full filesystem. Previously, if the allocation failed, we had to
fsync the file before rolling back any partial allocation of indirect
blocks. Most block allocation requests only need to allocate a single
data block and if that allocation fails, there is nothing to unroll.
So, before doing the fsync, we check to see if any rollback will
really be necessary. If none is necessary, then we simply return.
This update eliminates the flurry of disk activity that got triggered
whenever a filesystem would run out of space.
Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'lib/libc')
0 files changed, 0 insertions, 0 deletions