NetBSD-Bugs archive

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

PR/52301 CVS commit: [netbsd-8] src



The following reply was made to PR kern/52301; it has been noted by GNATS.

From: "Soren Jacobsen" <snj%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/52301 CVS commit: [netbsd-8] src
Date: Mon, 30 Oct 2017 09:29:04 +0000

 Module Name:	src
 Committed By:	snj
 Date:		Mon Oct 30 09:29:04 UTC 2017
 
 Modified Files:
 	src/sbin/fsck_lfs [netbsd-8]: inode.c lfs.c pass6.c segwrite.c
 	src/sys/ufs/lfs [netbsd-8]: lfs.h lfs_accessors.h lfs_alloc.c
 	    lfs_balloc.c lfs_bio.c lfs_extern.h lfs_inode.c lfs_inode.h
 	    lfs_itimes.c lfs_pages.c lfs_rename.c lfs_segment.c lfs_subr.c
 	    lfs_syscalls.c lfs_vfsops.c lfs_vnops.c ulfs_inode.c ulfs_inode.h
 	    ulfs_lookup.c ulfs_quota2.c ulfs_readwrite.c ulfs_vnops.c
 
 Log Message:
 Pull up following revision(s) (requested by maya in ticket #330):
 	sbin/fsck_lfs/inode.c: 1.69
 	sbin/fsck_lfs/lfs.c: 1.73
 	sbin/fsck_lfs/pass6.c: 1.50
 	sbin/fsck_lfs/segwrite.c: 1.46
 	sys/ufs/lfs/lfs.h: 1.202-1.203
 	sys/ufs/lfs/lfs_accessors.h: 1.48
 	sys/ufs/lfs/lfs_alloc.c: 1.136-1.137
 	sys/ufs/lfs/lfs_balloc.c: 1.94
 	sys/ufs/lfs/lfs_bio.c: 1.141
 	sys/ufs/lfs/lfs_extern.h: 1.113
 	sys/ufs/lfs/lfs_inode.c: 1.156-1.157
 	sys/ufs/lfs/lfs_inode.h: 1.20, 1.21, 1.23
 	sys/ufs/lfs/lfs_itimes.c: 1.20
 	sys/ufs/lfs/lfs_pages.c: 1.13-1.15
 	sys/ufs/lfs/lfs_rename.c: 1.22
 	sys/ufs/lfs/lfs_segment.c: 1.270-1.275
 	sys/ufs/lfs/lfs_subr.c: 1.94-1.97
 	sys/ufs/lfs/lfs_syscalls.c: 1.175
 	sys/ufs/lfs/lfs_vfsops.c: 1.360
 	sys/ufs/lfs/lfs_vnops.c: 1.316-1.321
 	sys/ufs/lfs/ulfs_inode.c: 1.20
 	sys/ufs/lfs/ulfs_inode.h: 1.24
 	sys/ufs/lfs/ulfs_lookup.c: 1.41
 	sys/ufs/lfs/ulfs_quota2.c: 1.31
 	sys/ufs/lfs/ulfs_readwrite.c: 1.24
 	sys/ufs/lfs/ulfs_vnops.c: 1.49-1.50
 Update inode member i_flag --> i_state to keep up with kernel changes
 Move definition of IN_ALLMOD near the flag it's a mask for.
 Now we can see that it doesn't match all the flags, but changing that will
 require more careful thought.
 Correct confusion between i_flag and i_flags
 These will have to be renamed.
 Spotted by Riastradh, thanks!
 Add an XXX about the missing flags so it's not buried in a commit
 message.
 now the XXX count for LFS is 260
 Rename i_flag to i_state.
 The similarity to i_flags has previously caused errors.
 Use continue to denote the no-op loop to match netbsd style
 newline for extra clarity.
 It isn't safe to drain dirops with seglock held, it'll deadlock if there
 are any dirops. drain before grabbing seglock.
 lfs_dirops == 0 is always true (as we already drained dirops), so omit
 that part of the comparison.
 Fixes a lot of LFS deadlocks. PR kern/52301
 Many thanks to dholland for help analyzing coredumps
 Ifdef out KDASSERT which fires on my machine.
 Deduplicate sanity check that seglock is held on segunlock
 Revert r1.272 fix to PR kern/52301, the performance hit is making things
 unusable.
 change lfs_nextsegsleep and lfs_allclean_wakeup to use condvar
 XXX had to use lfs_lock in lfs_segwait, removed kernel_lock, is this
 appropriate?
 fix buffer overflow/KASSERT when cookies are supplied
 lfs no longer uses the ffs-style struct direct, use the correct minimum
 size
 from dholland
 XXX more wrong
 Consistently use {,UN}MARK_VNODE macros rather than function calls.
 Not much point doing anything after a panic call
 Ask some question about the code in a XXX comment
 XXX question our double-flushing of dirops
 Fix typo in comment
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.68 -r1.68.8.1 src/sbin/fsck_lfs/inode.c
 cvs rdiff -u -r1.72 -r1.72.6.1 src/sbin/fsck_lfs/lfs.c
 cvs rdiff -u -r1.49 -r1.49.8.1 src/sbin/fsck_lfs/pass6.c
 cvs rdiff -u -r1.45 -r1.45.8.1 src/sbin/fsck_lfs/segwrite.c
 cvs rdiff -u -r1.201 -r1.201.6.1 src/sys/ufs/lfs/lfs.h
 cvs rdiff -u -r1.47 -r1.47.8.1 src/sys/ufs/lfs/lfs_accessors.h
 cvs rdiff -u -r1.135 -r1.135.6.1 src/sys/ufs/lfs/lfs_alloc.c
 cvs rdiff -u -r1.92 -r1.92.6.1 src/sys/ufs/lfs/lfs_balloc.c \
     src/sys/ufs/lfs/lfs_subr.c
 cvs rdiff -u -r1.139 -r1.139.4.1 src/sys/ufs/lfs/lfs_bio.c
 cvs rdiff -u -r1.111 -r1.111.10.1 src/sys/ufs/lfs/lfs_extern.h
 cvs rdiff -u -r1.155 -r1.155.6.1 src/sys/ufs/lfs/lfs_inode.c
 cvs rdiff -u -r1.19 -r1.19.6.1 src/sys/ufs/lfs/lfs_inode.h
 cvs rdiff -u -r1.19 -r1.19.10.1 src/sys/ufs/lfs/lfs_itimes.c
 cvs rdiff -u -r1.11.6.1 -r1.11.6.2 src/sys/ufs/lfs/lfs_pages.c
 cvs rdiff -u -r1.21 -r1.21.10.1 src/sys/ufs/lfs/lfs_rename.c
 cvs rdiff -u -r1.269 -r1.269.6.1 src/sys/ufs/lfs/lfs_segment.c
 cvs rdiff -u -r1.174 -r1.174.4.1 src/sys/ufs/lfs/lfs_syscalls.c
 cvs rdiff -u -r1.359 -r1.359.4.1 src/sys/ufs/lfs/lfs_vfsops.c
 cvs rdiff -u -r1.315 -r1.315.2.1 src/sys/ufs/lfs/lfs_vnops.c
 cvs rdiff -u -r1.19 -r1.19.2.1 src/sys/ufs/lfs/ulfs_inode.c
 cvs rdiff -u -r1.22 -r1.22.10.1 src/sys/ufs/lfs/ulfs_inode.h
 cvs rdiff -u -r1.40 -r1.40.6.1 src/sys/ufs/lfs/ulfs_lookup.c
 cvs rdiff -u -r1.30 -r1.30.6.1 src/sys/ufs/lfs/ulfs_quota2.c
 cvs rdiff -u -r1.23 -r1.23.6.1 src/sys/ufs/lfs/ulfs_readwrite.c
 cvs rdiff -u -r1.48 -r1.48.4.1 src/sys/ufs/lfs/ulfs_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