Subject: Re: Problems with "fss" (file system snapshot) device
To: None <tls@rek.tjls.com>
From: Jason Thorpe <thorpej@wasabisystems.com>
List: tech-kern
Date: 12/11/2003 08:58:16
--Apple-Mail-41-512899644
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII; format=flowed


On Dec 11, 2003, at 8:02 AM, Thor Lancelot Simon wrote:

> On Thu, Dec 11, 2003 at 12:30:53AM -0800, Jason Thorpe wrote:
>>
>> 3. Snapshots do not persist across reboots.  This is because there is
>> no way of knowing if a file system was modified while the "fss"
>> instance was not attached to it.  Again, this is a problem for
>> long-lived snapshots.  There are plenty of scenarios where long-lived
>> snapshots might be desirable (e.g. long-running back-up, policy-based
>> tiered storage management, etc.).
>
> This is a complete strawman.  Mounting a snapshotted filesystem
> read-write without using the snapshot device is an obvious case of
> "don't *do* that, then!".

It's not a strawman.  Just take a look at how fss instances are 
configured (example taken from fssconfig(8) manual page):

	fssconfig fss0 /usr /tmp/back

In other words, the file system has to be mounted in order to take the 
snapshot.  Mounting a file system modifies some of the data that the 
snapshot device would otherwise COW.

I.e. it is currently impossible to recover a snapshot after a reboot 
without a little dance:

	mount -o ro ... /usr
	fssconfig fss0 /usr /tmp/back
	mount -u -o rw /usr

Does creating a snapshot automatically frob the start-up procedure so 
that when the system reboots, the right thing happens?

> A block-snapshotting device is generally useful, and we need _some_
> form of snapshotting for FFS.  I'm sorry it's not exactly what you'd

I'm not disagreeing that this isn't useful.  I am mildly annoyed by the 
fact that:

	1. Three major issues were hand-waved by the author of the code,
	   even though the author specifically asked me to review the
	   changes.

	2. Three major issues which make the code much less useful in many
	   real-world usage models are apparently "acceptable", and none of
	   this was discussed on tech-kern prior to the code being checked
	   in.

	3. I'm getting this kind of attitude from you, of all people, Thor.
	   I'll keep that "I'm sorry it's not exactly what you'd prefer"
	   comment tucked under my hat the next time you have a problem with
	   a driver that I've worked on.

         -- Jason R. Thorpe <thorpej@wasabisystems.com>


--Apple-Mail-41-512899644
content-type: application/pgp-signature; x-mac-type=70674453;
	name=PGP.sig
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
content-transfer-encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (Darwin)

iD8DBQE/2KIoOpVKkaBm8XkRAoBNAKDACXJkzOTrivLlrODsqBh7VDjyHQCgwa6D
T5OlhioDkIknjJopOL4EWQE=
=Yt8z
-----END PGP SIGNATURE-----

--Apple-Mail-41-512899644--