Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/ufs/lfs



Module Name:    src
Committed By:   perseant
Date:           Wed Apr 23 07:20:40 UTC 2003

Modified Files:
        src/sys/ufs/lfs: lfs.h lfs_inode.c lfs_segment.c lfs_subr.c
            lfs_vfsops.c lfs_vnops.c

Log Message:
Make LFS work better (though still not "well") as an NFS-exported
filesystem (and other things that needed to be fixed before the tests
would complete), to wit:

* Include the fs ident in the filehandle; improve stale filehandle checks.

* Change definition of blksize() to use the on-dinode size instead of
  the inode's i_size, so that fsck_lfs will work properly again.

* Use b_interlock in lfs_vtruncbuf.

* Postpone dirop reclamation until after the seglock has been released,
  so that lfs_truncate is not called with the segment lock held.

* Don't loop in lfs_fsync(), just write everything and wait.

* Be more careful about the interlock/uobjlock in lfs_putpages: when we
  lose this lock, we have to resynchronize dirtiness of pages in each
  block.

* Be sure to always write indirect blocks and update metadata in
  lfs_putpages; fixes a bug that caused blocks to be accounted to the
  wrong segment.


To generate a diff of this commit:
cvs rdiff -r1.63 -r1.64 src/sys/ufs/lfs/lfs.h
cvs rdiff -r1.73 -r1.74 src/sys/ufs/lfs/lfs_inode.c
cvs rdiff -r1.119 -r1.120 src/sys/ufs/lfs/lfs_segment.c
cvs rdiff -r1.39 -r1.40 src/sys/ufs/lfs/lfs_subr.c
cvs rdiff -r1.114 -r1.115 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -r1.102 -r1.103 src/sys/ufs/lfs/lfs_vnops.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