Source-Changes archive

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

CVS commit: src/sys



Module Name:    src
Committed By:   jdolecek
Date:           Fri Oct 28 20:38:12 UTC 2016

Modified Files:
        src/sys/kern: vfs_wapbl.c
        src/sys/sys: wapbl.h
        src/sys/ufs/ffs: ffs_alloc.c ffs_inode.c ffs_snapshot.c
        src/sys/ufs/ufs: ufs_extern.h ufs_inode.c ufs_rename.c ufs_vnops.c
            ufs_wapbl.h

Log Message:
reorganize ffs_truncate()/ffs_indirtrunc() to be able to partially
succeed; change wapbl_register_deallocation() to return EAGAIN
rather than panic when code hits the limit

callers changed to either loop calling ffs_truncate() using new
utility ufs_truncate_retry() if their semantics requires it, or
just ignore the failure; remove ufs_wapbl_truncate()

this fixes possible user-triggerable panic during truncate, and
resolves WAPBL performance issue with truncates of large files

PR kern/47146 and kern/49175


To generate a diff of this commit:
cvs rdiff -u -r1.84 -r1.85 src/sys/kern/vfs_wapbl.c
cvs rdiff -u -r1.18 -r1.19 src/sys/sys/wapbl.h
cvs rdiff -u -r1.152 -r1.153 src/sys/ufs/ffs/ffs_alloc.c
cvs rdiff -u -r1.117 -r1.118 src/sys/ufs/ffs/ffs_inode.c
cvs rdiff -u -r1.142 -r1.143 src/sys/ufs/ffs/ffs_snapshot.c
cvs rdiff -u -r1.82 -r1.83 src/sys/ufs/ufs/ufs_extern.h
cvs rdiff -u -r1.96 -r1.97 src/sys/ufs/ufs/ufs_inode.c
cvs rdiff -u -r1.12 -r1.13 src/sys/ufs/ufs/ufs_rename.c
cvs rdiff -u -r1.232 -r1.233 src/sys/ufs/ufs/ufs_vnops.c
cvs rdiff -u -r1.11 -r1.12 src/sys/ufs/ufs/ufs_wapbl.h

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