diff options
author | kib <kib@FreeBSD.org> | 2012-06-12 21:37:27 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2012-06-12 21:37:27 +0000 |
commit | 82d8f361abba1ad60fd234e39834abf5eb94d611 (patch) | |
tree | e2145ba275ce87e8265e0ff94f8f88731d4f6fcf /tools/regression | |
parent | 4ff7dff337b85f1e4a1bb9de724d634e71d86771 (diff) | |
download | FreeBSD-src-82d8f361abba1ad60fd234e39834abf5eb94d611.zip FreeBSD-src-82d8f361abba1ad60fd234e39834abf5eb94d611.tar.gz |
For incompleted block allocations or frees, the inode block count usage
must be recalculated. The blk_check pass of suj checker explicitely marks
inodes which owned such blocks as needing block count adjustment. But
ino_adjblks() is only called by cg_trunc pass, which is performed before
blk_check. As result, the block use count for such inodes is left wrong.
This causes full fsck run after journaled run to still find inconsistencies
like 'INCORRECT BLOCK COUNT I=14557 (328 should be 0)' in phase 1.
Fix this issue by running additional adj_blk pass after blk_check, which
updates the field.
Reviewed by: jeff, mckusick
MFC after: 1 week
Diffstat (limited to 'tools/regression')
0 files changed, 0 insertions, 0 deletions