Subject: CVS commit: syssrc
To: None <>
From: Konrad Schroder <>
List: source-changes
Date: 09/14/2000 21:50:21
Module Name:	syssrc
Committed By:	perseant
Date:		Thu Sep 14 18:50:20 UTC 2000

Modified Files:
	syssrc/sys/ufs/lfs [netbsd-1-5]: 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
	syssrc/sys/ufs/ufs [netbsd-1-5]: inode.h ufs_readwrite.c ufs_vnops.c

Log Message:
Pull up recent LFS kernel changes (approved by thorpej):

ufs/ufs/inode.h, 1.20--1.22      (add i_lfs_effnblks extension ;
                                 make ITIMES aware of LFS_ITIMES;
                                 _LKM protection so userland progs
ufs/ufs/ufs_vnops.c, 1.69, 1.71  (remove IN_ADIROP;
                                 use ITIMES instead of FFS_ITIMES)
ufs/ufs/ufs_readwrite.c, 1.27    (use lfs_reserve in lfs_write)
ufs/lfs/lfs.h, 1.26--1.32        (define LFS_EST_* macros ;
                                 change MIN_FREE_SEGS to lfs_minfreesegs ;
                                 add avail and bfree to CLEANERINFO ;
                                 change lfs_uinodes to signed ;
                                 change lfs_dmeta to signed ;
                                 add whitespace to line up structure
                                 members ;
                                 explicit cast to int32_t in LFS_EST_*
ufs/lfs/lfs_alloc.c, back out (pullups of 1.39, 1.40);
then pull up         1.38        (clean up on error)
                     1.39--1.43  (restore fvdl's ufs_hashlock fix ;
                                 restore fvdl's ufs_hashlock fix ;
                                 set i_lfs_effnblks ;
                                 use UINO macros ;
                                 add comments and fix long lines)
ufs/lfs/lfs_balloc.c, 1.19       (don't succeed halfway)
                      1.21--1.25 (use i_lfs_effnblks ;
                                 fix i_lfs_effnblks computation and
                                 quieten ;
                                 fix i_ffs_blocks in unwritten fragment ;
                                 remove useless debugging check ;
                                 add comments and (c) 2000)
ufs/lfs/lfs_bio.c, 1.24--1.30    (cleanup and make lfs_flush_fs take
                                   "struct lfs *" instead of "struct
                                 mount *" ;
                                 use lfs_minfreeseg instead of
                                 MIN_FREE_SEGS ;
                                 use UINO macros, and copy bfree/avail
                                   to CLEANERINFO ;
                                 add lfs_reserve function ;
                                 1.28--1.30 fix printf formatting)
ufs/lfs/lfs_cksum.c, 1.13        (add (c) 2000)
ufs/lfs/lfs_debug.c, 1.11        (use btodb instead of DEV_BSIZE)
ufs/lfs/lfs_extern.h, 1.18, 1.20--1.21 (function prototype changes)
ufs/lfs/lfs_inode.c, 1.38        (rewrite lfs_truncate from
                     1.40--1.44  (count written and unwritten blocks
                                   seperately ;
                                 use disk block units instead of bytes ;
                                 remove unnecessary "mod" variable ;
                                 correct B_DELWRI to avoid bawrite panic ;
                                 use lfs_reserve)
ufs/lfs/lfs_segment.c, 1.52-1.59 (use lfs_dmeta to note used summaries ;
                                 check for UNWRITTEN in indirect blocks ;
                                 more debugging stuff inside #ifdef
                                 DEBUG_LFS ;
                                 use LK_CANRECURSE ;
                                 don't drop dirty indirect blocks ;
                                 use UINO macros ;
                                 don't hose the free list ;
                                 use btodb() instead of DEV_BSIZE ;
                                 make it compile again (oops))
ufs/lfs/lfs_subr.c, 1.16--1.17   (check for locked inodes before
                                 changing ;
                                 use btodb() instead of DEV_BSIZE, (c)
ufs/lfs/lfs_syscalls.c, back out (fvdl's ufs_hashlock fix);
then pull up          1.43       (use lfs_dmeta)
                      1.44--1.45 (restore fvdl's ufs_hashlock fix)
                      1.46--1.47 (fix lfs_avail leakage from sblock
                                 segments ;
                                 use UINO macros)
                      1.49       (bounds-check inode numbers in
ufs/lfs/lfs_vfsops.c, 1.53       (use LFS_EST_* macros in lfs_statfs)
                      1.56--1.58 (initialize lfs_minfreeseg, lfs_effnblk ;
                                 initialize lfs_uinodes ;
                                 initialize lfs_ravail)
ufs/lfs/lfs_vnops.c, 1.40        (remove VDIROP from removed files)
                     1.42--1.44  (move SET_ENDOP below the removal of
                                 VDIROP ;
                                 use UINO macros and add lfs_itimes
                                 function ;
                                 use lfs_reserve in dirops)

To generate a diff of this commit:
cvs rdiff -r1.25 -r1.25.2.1 syssrc/sys/ufs/lfs/lfs.h
cvs rdiff -r1.34.2.3 -r1.34.2.4 syssrc/sys/ufs/lfs/lfs_alloc.c
cvs rdiff -r1.18 -r1.18.2.1 syssrc/sys/ufs/lfs/lfs_balloc.c
cvs rdiff -r1.23 -r1.23.2.1 syssrc/sys/ufs/lfs/lfs_bio.c
cvs rdiff -r1.12 -r1.12.4.1 syssrc/sys/ufs/lfs/lfs_cksum.c
cvs rdiff -r1.10 -r1.10.4.1 syssrc/sys/ufs/lfs/lfs_debug.c
cvs rdiff -r1.17.4.1 -r1.17.4.2 syssrc/sys/ufs/lfs/lfs_extern.h
cvs rdiff -r1.37 -r1.37.2.1 syssrc/sys/ufs/lfs/lfs_inode.c
cvs rdiff -r1.49.2.2 -r1.49.2.3 syssrc/sys/ufs/lfs/lfs_segment.c
cvs rdiff -r1.15 -r1.15.2.1 syssrc/sys/ufs/lfs/lfs_subr.c
cvs rdiff -r1.41.4.3 -r1.41.4.4 syssrc/sys/ufs/lfs/lfs_syscalls.c
cvs rdiff -r1.52.4.1 -r1.52.4.2 syssrc/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -r1.38.2.1 -r1.38.2.2 syssrc/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -r1.19 -r1.19.2.1 syssrc/sys/ufs/ufs/inode.h
cvs rdiff -r1.26 -r1.26.4.1 syssrc/sys/ufs/ufs/ufs_readwrite.c
cvs rdiff -r1.68.2.1 -r1.68.2.2 syssrc/sys/ufs/ufs/ufs_vnops.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.