Date: Wed, 5 Oct 2005 05:24:53 +0000 (UTC) From: Don Lewis <truckman@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ufs/ffs ffs_alloc.c Message-ID: <200510050524.j955OrAq003944@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
truckman 2005-10-05 05:24:53 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_6)
sys/ufs/ffs ffs_alloc.c
Log:
MFC ffs_alloc.c 1.135 - clear i_flag field in recycled inodes
Original commit message:
FreeBSD src repository
Modified files:
sys/ufs/ffs ffs_alloc.c
Log:
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.
Reviewed by: tegge
Approved by: re (scottl)
Revision Changes Path
1.132.2.1 +1 -0 src/sys/ufs/ffs/ffs_alloc.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510050524.j955OrAq003944>
