Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src
Module Name: src
Committed By: perseant
Date: Mon Feb 17 23:48:26 UTC 2003
Modified Files:
src/libexec/lfs_cleanerd: print.c
src/sbin/fsck_lfs: inode.c pass0.c
src/sys/conf: osrelease.sh
src/sys/miscfs/genfs: genfs_node.h genfs_vnops.c
src/sys/nfs: nfs_node.c
src/sys/sys: param.h
src/sys/ufs/ffs: ffs_extern.h ffs_vfsops.c ffs_vnops.c
src/sys/ufs/lfs: TODO lfs.h lfs_alloc.c lfs_balloc.c lfs_bio.c
lfs_cksum.c lfs_debug.c lfs_extern.h lfs_inode.c lfs_segment.c
lfs_subr.c lfs_syscalls.c lfs_vfsops.c lfs_vnops.c
src/sys/ufs/ufs: inode.h ufs_extern.h ufs_inode.c ufs_readwrite.c
ufs_vnops.c
src/sys/uvm: uvm_page.c uvm_pager.h
src/usr.sbin/dumplfs: dumplfs.c
src/usr.sbin/quotaon: quotaon.c
Log Message:
Add code to UBCify LFS. This is still behind "#ifdef LFS_UBC" for now
(there are still some details to work out) but expect that to go
away soon. To support these basic changes (creation of lfs_putpages,
lfs_gop_write, mods to lfs_balloc) several other changes were made, to
wit:
* Create a writer daemon kernel thread whose purpose is to handle page
writes for the pagedaemon, but which also takes over some of the
functions of lfs_check(). This thread is started the first time an
LFS is mounted.
* Add a "flags" parameter to GOP_SIZE. Current values are
GOP_SIZE_READ, meaning that the call should return the size of the
in-core version of the file, and GOP_SIZE_WRITE, meaning that it
should return the on-disk size. One of GOP_SIZE_READ or
GOP_SIZE_WRITE must be specified.
* Instead of using malloc(...M_WAITOK) for everything, reserve enough
resources to get by and use malloc(...M_NOWAIT), using the reserves if
necessary. Use the pool subsystem for structures small enough that
this is feasible. This also obsoletes LFS_THROTTLE.
And a few that are not strictly necessary:
* Moves the LFS inode extensions off onto a separately allocated
structure; getting closer to LFS as an LKM. "Welcome to 1.6O."
* Unified GOP_ALLOC between FFS and LFS.
* Update LFS copyright headers to correct values.
* Actually cast to unsigned in lfs_shellsort, like the comment says.
* Keep track of which segments were empty before the previous
checkpoint; any segments that pass two checkpoints both dirty and
empty can be summarily cleaned. Do this. Right now lfs_segclean
still works, but this should be turned into an effectless
compatibility syscall.
To generate a diff of this commit:
cvs rdiff -r1.13 -r1.14 src/libexec/lfs_cleanerd/print.c
cvs rdiff -r1.14 -r1.15 src/sbin/fsck_lfs/inode.c
cvs rdiff -r1.12 -r1.13 src/sbin/fsck_lfs/pass0.c
cvs rdiff -r1.90 -r1.91 src/sys/conf/osrelease.sh
cvs rdiff -r1.3 -r1.4 src/sys/miscfs/genfs/genfs_node.h
cvs rdiff -r1.71 -r1.72 src/sys/miscfs/genfs/genfs_vnops.c
cvs rdiff -r1.60 -r1.61 src/sys/nfs/nfs_node.c
cvs rdiff -r1.159 -r1.160 src/sys/sys/param.h
cvs rdiff -r1.25 -r1.26 src/sys/ufs/ffs/ffs_extern.h
cvs rdiff -r1.106 -r1.107 src/sys/ufs/ffs/ffs_vfsops.c
cvs rdiff -r1.54 -r1.55 src/sys/ufs/ffs/ffs_vnops.c
cvs rdiff -r1.5 -r1.6 src/sys/ufs/lfs/TODO
cvs rdiff -r1.45 -r1.46 src/sys/ufs/lfs/lfs.h
cvs rdiff -r1.62 -r1.63 src/sys/ufs/lfs/lfs_alloc.c
cvs rdiff -r1.35 -r1.36 src/sys/ufs/lfs/lfs_balloc.c
cvs rdiff -r1.57 -r1.58 src/sys/ufs/lfs/lfs_bio.c
cvs rdiff -r1.20 -r1.21 src/sys/ufs/lfs/lfs_cksum.c
cvs rdiff -r1.19 -r1.20 src/sys/ufs/lfs/lfs_debug.c
cvs rdiff -r1.38 -r1.39 src/sys/ufs/lfs/lfs_extern.h
cvs rdiff -r1.63 -r1.64 src/sys/ufs/lfs/lfs_inode.c
cvs rdiff -r1.100 -r1.101 src/sys/ufs/lfs/lfs_segment.c
cvs rdiff -r1.30 -r1.31 src/sys/ufs/lfs/lfs_subr.c
cvs rdiff -r1.79 -r1.80 src/sys/ufs/lfs/lfs_syscalls.c
cvs rdiff -r1.90 -r1.91 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -r1.83 -r1.84 src/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -r1.32 -r1.33 src/sys/ufs/ufs/inode.h
cvs rdiff -r1.30 -r1.31 src/sys/ufs/ufs/ufs_extern.h
cvs rdiff -r1.33 -r1.34 src/sys/ufs/ufs/ufs_inode.c
cvs rdiff -r1.47 -r1.48 src/sys/ufs/ufs/ufs_readwrite.c
cvs rdiff -r1.89 -r1.90 src/sys/ufs/ufs/ufs_vnops.c
cvs rdiff -r1.83 -r1.84 src/sys/uvm/uvm_page.c
cvs rdiff -r1.25 -r1.26 src/sys/uvm/uvm_pager.h
cvs rdiff -r1.21 -r1.22 src/usr.sbin/dumplfs/dumplfs.c
cvs rdiff -r1.17 -r1.18 src/usr.sbin/quotaon/quotaon.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index