Home | History | Annotate | only in /src/usr.sbin/fssconfig
History log of /src/usr.sbin/fssconfig
RevisionDateAuthorComments
 1.2 31-Jul-2016  pgoyette Add rump.fssconfig
 1.1 10-Dec-2003  hannken branches: 1.1.78;
The file system snapshot pseudo driver.

Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().

Not enabled by default in any kernel config.

Approved by: Frank van der Linden <fvdl@netbsd.org>
 1.1.78.2 06-Aug-2016  pgoyette Sync with HEAD
 1.1.78.1 31-Jul-2016  pgoyette Add a rump version of fssconfig
 1.12 29-Jul-2016  pgoyette Improve wording, enhance the example
 1.11 15-Nov-2013  hannken branches: 1.11.8;
Describe the differences between file system internal and external snapshots.
 1.10 05-Mar-2013  wiz Fix typo.
 1.9 05-Mar-2013  jdf Fix wording: s/ffs file systems/FFS file systems/
Proposed by Snader_LB
 1.8 11-Jun-2012  hannken branches: 1.8.2;
File system snapshots are no longer experimental.
Forgot to chang this man page in Nov 2011.
 1.7 30-Apr-2008  martin branches: 1.7.4; 1.7.22;
Convert TNF licenses to new 2 clause variant
 1.6 01-Feb-2005  wiz branches: 1.6.24;
Give Dd the full month name as argument.
 1.5 31-Jan-2005  hannken Note file system internal snapshots.
 1.4 25-May-2004  hannken Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
Snapshots may not be opened for writing and the attributes are read-only.
Use the mtime as the time this snapshot was taken.
Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

Approved by: Jason R. Thorpe <thorpej@netbsd.org>
 1.3 11-Jan-2004  hannken Update the file system snapshot driver:
- Document the kernel thread.
- Rename some functions and variables.
- Return EROFS where appropriate.
- Use shifts instead of 64-bit divide.
- Use a simple_lock to make it MP-safe.
- Add M_CANFAIL to malloc to avoid panic on large cluster size.
- Allow sparse file for backing store and use VOP_BALLOC() to allocate
space. Default size of backing store is the size of the file system.
 1.2 11-Dec-2003  wiz Drop trailing spaces; new sentence, new line; fix width
argument to avoid confusion (indent is only magic for -offset); add a comma
for easier reading.
 1.1 10-Dec-2003  hannken The file system snapshot pseudo driver.

Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().

Not enabled by default in any kernel config.

Approved by: Frank van der Linden <fvdl@netbsd.org>
 1.6.24.1 18-May-2008  yamt sync with head.
 1.7.22.1 13-Jun-2012  riz Pull up following revision(s) (requested by hannken in ticket #329):
usr.sbin/fssconfig/fssconfig.8: revision 1.8
File system snapshots are no longer experimental.
Forgot to chang this man page in Nov 2011.
 1.7.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.4.1 30-Oct-2012  yamt sync with head
 1.8.2.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.2.1 23-Jun-2013  tls resync from head
 1.11.8.1 06-Aug-2016  pgoyette Sync with HEAD
 1.13 21-Dec-2017  hannken Use stat() information to decide if the backing store is a directory.
Depending on open() returning EISDIR fails for mount points.
 1.12 31-Jul-2016  pgoyette branches: 1.12.6;
Add rump.fssconfig
 1.11 30-Jul-2016  pgoyette Update command line parsing to match reality. Only one of -c, -u, or
-l can be specified, and the -x option is available only for -c.
 1.10 04-Nov-2012  christos branches: 1.10.12;
include the headers you need
 1.9 28-Jul-2012  hannken branches: 1.9.2;
Initialize `fss_flags' before setting an individual bit.
Not a real problem as there is only one valid bit yet.

From Edgar Fuss via tech-kern@netbsd.org
 1.8 30-Aug-2011  joerg branches: 1.8.2; 1.8.4;
static + __dead
 1.7 24-Feb-2011  hannken fss(4): Allow FSSIOCSET to set the initial flags. Add a new flag
"FSS_UNLINK_ON_CREATE" to unlink the backing store before
the snapshot gets created.

With this change dump(8) no longer dumps the zero-sized, but named
snapshot it is working on. Same applies to fsck_ffs(8).
 1.6 28-Apr-2008  martin branches: 1.6.6; 1.6.18;
Remove clause 3 and 4 from TNF licenses
 1.5 17-Apr-2005  hannken branches: 1.5.18;
Support user controllable flags for the snapshot driver:
- Add FSSIOFSET and FSSIOFGET ioctl() to set/get the flags.
- Add FSS_UNCONFIG_ON_CLOSE flag to unconfigure the snapshot device
on the last close.

Reviewed by: Jason R. Thorpe <thorpej@netbsd.org>
 1.4 25-May-2004  hannken branches: 1.4.2;
Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
Snapshots may not be opened for writing and the attributes are read-only.
Use the mtime as the time this snapshot was taken.
Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

Approved by: Jason R. Thorpe <thorpej@netbsd.org>
 1.3 21-Apr-2004  christos Replace the statfs() family of system calls with statvfs().
Retain binary compatibility.
 1.2 11-Jan-2004  hannken Update the file system snapshot driver:
- Document the kernel thread.
- Rename some functions and variables.
- Return EROFS where appropriate.
- Use shifts instead of 64-bit divide.
- Use a simple_lock to make it MP-safe.
- Add M_CANFAIL to malloc to avoid panic on large cluster size.
- Allow sparse file for backing store and use VOP_BALLOC() to allocate
space. Default size of backing store is the size of the file system.
 1.1 10-Dec-2003  hannken The file system snapshot pseudo driver.

Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().

Not enabled by default in any kernel config.

Approved by: Frank van der Linden <fvdl@netbsd.org>
 1.4.2.1 21-Apr-2005  tron Pull up revision 1.5 (requested by hannken in ticket #184):
Support user controllable flags for the snapshot driver:
- Add FSSIOFSET and FSSIOFGET ioctl() to set/get the flags.
- Add FSS_UNCONFIG_ON_CLOSE flag to unconfigure the snapshot device
on the last close.
Reviewed by: Jason R. Thorpe <thorpej@netbsd.org>
 1.5.18.1 18-May-2008  yamt sync with head.
 1.6.18.1 05-Mar-2011  bouyer Sync with HEAD
 1.6.6.2 23-Aug-2012  bouyer Pull up following revision(s) (requested by hannken in ticket #1784):
sys/dev/fss.c: revisions 1.82 and 1.83 via patch
usr.sbin/fssconfig/fssconfig.c: revision 1.9
Initialize `fss_flags' before setting an individual bit.
Use `getdisksize()' to get the size of the mounted-on block device.
Should work for disks without partition table (wedges) now.
 1.6.6.1 18-Jun-2011  bouyer Pull up following revision(s) (requested by hannken in ticket #1627):
sys/kern/vfs_wapbl.c: revisions 1.41-1.42
sbin/dump/snapshot.c: revisions 1.6 (patch)
share/man/man4/fss.4: revisions 1.15 (patch)
sys/dev/fss.c: revisions 1.73 (patch)
sys/dev/fssvar.h: revisions 1.25
usr.sbin/fssconfig/fssconfig.c: revisions 1.7
sys/ufs/ffs/ffs_balloc.c: revisions 1.54
sys/ufs/ffs/ffs_snapshot.c: revisions 1.90, 1.98, 1.100-1.101, 1.103-1.110, 1.111, 1.112-1.115 (patch)

- Try to keep snapshot indirect blocks contiguous. This speeds up snapshot
creation by a factor of ~3 and reduces the file system suspension time by
a factor of ~5.

- Refine the scope of WAPBL transactions and the limit for deallocations in
one transaction so we should no longer get a "wapbl_flush: current
transaction too big to flush" panic when creating or removing snapshots
on larger logging disks.

- fss(4): Allow FSSIOCSET to set the initial flags. Add a new flag
"FSS_UNLINK_ON_CREATE" to unlink the backing store before the snapshot
gets created. With this change dump(8) no longer dumps the zero-sized,
but named snapshot it is working on.
 1.8.4.1 30-Jul-2012  martin Pull up following revision(s) (requested by hannken in ticket #449):
sys/dev/fss.c: revision 1.82
sys/dev/fss.c: revision 1.83
usr.sbin/fssconfig/fssconfig.c: revision 1.9
Initialize `fss_flags' before setting an individual bit.
Not a real problem as there is only one valid bit yet.
From Edgar Fuss via tech-kern@netbsd.org
Use `getdisksize()' to get the size of the mounted-on block device.
Should work for disks without partition table (wedges) now.
Minor fix to previous -- release vnode after last use, not before.
 1.8.2.2 16-Jan-2013  yamt sync with (a bit old) head
 1.8.2.1 30-Oct-2012  yamt sync with head
 1.9.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.10.12.1 06-Aug-2016  pgoyette Sync with HEAD
 1.12.6.1 13-Jan-2018  snj Pull up following revision(s) (requested by hannken in ticket #475):
sys/dev/fss.c: revision 1.101-1.103
usr.sbin/fssconfig/fssconfig.c: revision 1.13
Bounds check against media size for non-persistent snapshots.
--
Treat partial read from backing store as I/O error.
--
Pass residual back to b_resid for persistent snapshots.
--
Use stat() information to decide if the backing store is a directory.
Depending on open() returning EISDIR fails for mount points.
 1.2 31-Jul-2016  pgoyette Include rump-vs-host ops files
 1.1 31-Jul-2016  pgoyette branches: 1.1.2;
file fssconfig_hostops.c was initially added on branch pgoyette-localcount.
 1.1.2.1 31-Jul-2016  pgoyette Add a rump version of fssconfig
 1.2 31-Jul-2016  pgoyette Include rump-vs-host ops files
 1.1 31-Jul-2016  pgoyette branches: 1.1.2;
file fssconfig_rumpops.c was initially added on branch pgoyette-localcount.
 1.1.2.1 31-Jul-2016  pgoyette Add a rump version of fssconfig
 1.2 31-Jul-2016  pgoyette Include rump-vs-host ops files
 1.1 31-Jul-2016  pgoyette branches: 1.1.2;
file prog_ops.h was initially added on branch pgoyette-localcount.
 1.1.2.1 31-Jul-2016  pgoyette Add a rump version of fssconfig

RSS XML Feed