Source-Changes archive

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

CVS commit: [bouyer-quota2] src/sys



Module Name:    src
Committed By:   bouyer
Date:           Fri Feb 18 19:54:45 UTC 2011

Modified Files:
        src/sys/sys [bouyer-quota2]: stat.h
        src/sys/ufs/ffs [bouyer-quota2]: ffs_snapshot.c
        src/sys/ufs/ufs [bouyer-quota2]: ufs_bmap.c ufs_readwrite.c ufs_vnops.c

Log Message:
Add a new inode flag, SF_SNAPINVAL, to be set on SF_SNAPSHOT inodes when
the snapshot is invalid.
Set SF_SNAPSHOT | SF_SNAPINVAL early when initializing a snapshot indode,
so that quota are bypassed for allocations on this inode.
Set SF_SNAPSHOT | SF_SNAPINVAL (instead of clearing SF_SNAPSHOT) when
expuge()ing a snapshot inode, so that userland tools working on the
snapshot (e.g. fsck or dump) can properly handle this inode.

The main point at this time is to have fsck_ffs -X properly compute quotas;
as a bonus persistent snapshots files won't show up in a dump(8) from a
snapshot.

This may also help speeding up taking snapshots, by bypassing expuge()
for snapshot inodes completely (but this needs more thoughs).

Briefly discussed with hannken@ in private mail.


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.59.8.1 src/sys/sys/stat.h
cvs rdiff -u -r1.102.4.6 -r1.102.4.7 src/sys/ufs/ffs/ffs_snapshot.c
cvs rdiff -u -r1.48 -r1.48.34.1 src/sys/ufs/ufs/ufs_bmap.c
cvs rdiff -u -r1.95 -r1.95.4.1 src/sys/ufs/ufs/ufs_readwrite.c
cvs rdiff -u -r1.186.4.1 -r1.186.4.2 src/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.



Home | Main Index | Thread Index | Old Index