diff options
author | truckman <truckman@FreeBSD.org> | 2005-10-03 21:57:43 +0000 |
---|---|---|
committer | truckman <truckman@FreeBSD.org> | 2005-10-03 21:57:43 +0000 |
commit | 12c8814c4626cae198759b6669ede20afcd22c90 (patch) | |
tree | 2b32324344d6e40447ba465fad6c7df80103663f /lib/libthr/thread/thr_join.c | |
parent | 2cc06a19bc0bbe4a6b67dc95ad183b4dc492c56c (diff) | |
download | FreeBSD-src-12c8814c4626cae198759b6669ede20afcd22c90.zip FreeBSD-src-12c8814c4626cae198759b6669ede20afcd22c90.tar.gz |
Initialize the inode i_flag field in ffs_valloc() to clean up any
stale flag bits left over from before the inode was recycled.
Without this change, a leftover IN_SPACECOUNTED flag could prevent
softdep_freefile() and softdep_releasefile() from incrementing
fs_pendinginodes. Because handle_workitem_freefile() unconditionally
decrements fs_pendinginodes, a negative value could be reported at
file system unmount time with a message like:
unmount pending error: blocks 0 files -3
The pending block count in fs_pendingblocks could also be negative
for similar reasons. These errors can cause the data returned by
statfs() to be slightly incorrect. Some other cleanup code in
softdep_releasefile() could also be incorrectly bypassed.
MFC after: 3 days
Diffstat (limited to 'lib/libthr/thread/thr_join.c')
0 files changed, 0 insertions, 0 deletions