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 Jan  5 05:02:47 UTC 2026

Modified Files:
        src/sbin/fsck_lfs: segwrite.c
        src/sys/ufs/lfs: lfs.h lfs_alloc.c lfs_balloc.c lfs_extern.h
            lfs_inode.c lfs_itimes.c lfs_kclean.c lfs_kernel.h lfs_pages.c
            lfs_subr.c lfs_syscalls.c lfs_vfsops.c lfs_vnops.c

Log Message:
One lock to rule them all.

Break the "lock" part of lfs_seglock() into its own function,
lfs_prelock().  Remove the lock flag SEGM_PROT, replacing instances of
lfs_seglock(fs, SEGM_PROT) with lfs_prelock(fs, 0).  Reimplement the
fragment lock and cleaner lock to use lfs_prelock().

Avoids an observed deadlock between fragment extension and segment writing.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/sbin/fsck_lfs/segwrite.c
cvs rdiff -u -r1.218 -r1.219 src/sys/ufs/lfs/lfs.h
cvs rdiff -u -r1.153 -r1.154 src/sys/ufs/lfs/lfs_alloc.c
cvs rdiff -u -r1.97 -r1.98 src/sys/ufs/lfs/lfs_balloc.c
cvs rdiff -u -r1.130 -r1.131 src/sys/ufs/lfs/lfs_extern.h
cvs rdiff -u -r1.164 -r1.165 src/sys/ufs/lfs/lfs_inode.c
cvs rdiff -u -r1.21 -r1.22 src/sys/ufs/lfs/lfs_itimes.c
cvs rdiff -u -r1.3 -r1.4 src/sys/ufs/lfs/lfs_kclean.c
cvs rdiff -u -r1.4 -r1.5 src/sys/ufs/lfs/lfs_kernel.h
cvs rdiff -u -r1.27 -r1.28 src/sys/ufs/lfs/lfs_pages.c
cvs rdiff -u -r1.109 -r1.110 src/sys/ufs/lfs/lfs_subr.c
cvs rdiff -u -r1.179 -r1.180 src/sys/ufs/lfs/lfs_syscalls.c
cvs rdiff -u -r1.398 -r1.399 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -u -r1.351 -r1.352 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