437e855235
* Mark being-deleted files in the Ifile so we can finish deleting them at fs mount time. * Flag the Ifile with "cleaner must clean" when writers are waiting for the cleaner, rather than relying solely on the cleaner's estimation of whether it should clean or not. * Note partial segments written by a user agent (in particular, fsck_lfs) so that repeated rolls forward don't interfere with one another. * Add a new fcntl, LFCNPASS, that allows the log to wrap exactly once, for better testing of the validity of checkpoints. * Keep track of the on-disk nlink count when cleaning, so that we don't partially complete directory operations while cleaning. * Ensure that every single Ifile inode write represents a consistent view of the filesystem. In particular, the accounting for the segment we are writing the inode into must be correct, and the accounting for the segment that inode used to reside in must be correct. Rather than just rewriting the inode if we wrote it wrong, rewrite the necessary ifile blocks before writing the inode so we never write it wrong. * Don't unmark any VDIROP vnodes if we haven't written them to disk, avoiding yet another problem with the "wait for the cleaner" error return from lfs_putpages(). Also, move the last callback to an aiodone call, so we no longer do any memory management from interrupt context. |
||
---|---|---|
.. | ||
altq | ||
arch | ||
coda | ||
compat | ||
conf | ||
contrib/dev/ath | ||
crypto | ||
ddb | ||
dev | ||
dist | ||
fs | ||
gdbscripts | ||
ipkdb | ||
kern | ||
lib | ||
lkm | ||
miscfs | ||
net | ||
net80211 | ||
netatalk | ||
netbt | ||
netinet | ||
netinet6 | ||
netipsec | ||
netisdn | ||
netiso | ||
netkey | ||
netnatm | ||
netsmb | ||
nfs | ||
opencrypto | ||
stand | ||
sys | ||
ufs | ||
uvm | ||
Makefile |