-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Manuel Amador (Rudd-O):
> > I haven't been able to understand the codebase for the "file" storage
> > pool very well.

That might be for the better... It's kind of the haunted house storage
driver at this point.

> > At which point in the lifetime of a VM do changes get merged down from
> > the COW private.img to the base private img?

Never: In 'file', private.img stores the complete *up-to-date* data
(modified live if the VM is running) for the volume 'private', while
private-cow.img stores only the differing *old* blocks that have been
changed in private.img since volume start. commit() then just deletes
private-cow.img (if revisions_to_keep==0) or renames it to
private-cow.img.old (if revisions_to_keep==1).

Whereas in 'file-reflink' it's the opposite: private.img stores the
(complete) *old* data, and private-dirty.img stores the complete
*up-to-date* data.

> > If my machine crashes, what prevents the data in the COW private.img
> > from being lost next time the VM starts?

So this would not cause data loss.

But there are bound to be some serious data loss bugs in 'file' - the
worst that I know of is that cloning or backing up a running VM will
likely result in corrupted data (in the destination), because those
operations read the live volume data while it is being modified:

https://github.com/QubesOS/qubes-issues/issues/4324

> my ZFS pool code

Nice. Godspeed!

I had been hoping that OpenZFS would finally get FICLONE support after
Or*cle ZFS got the Solaris equivalent a while ago - which would make
'file-reflink' compatible with ZFS. But nothing really seems to be
happening on that front:

https://github.com/zfsonlinux/zfs/issues/405

Rusty
-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEEhLWbz8YrEp/hsG0ERp149HqvKt8FAl0TQAFfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDg0
QjU5QkNGQzYyQjEyOUZFMUIwNkQwNDQ2OUQ3OEY0N0FBRjJBREYACgkQRp149Hqv
Kt8RdBAAifHE2iNVl4rK5DpPM3KxEqsEjHJRq/Ug2OE964jstspIZhGf+HRNrM49
iW7VuRi0RIiY15h0dX3AjYWdJJum237fnSC7XWzNpspjI4xpAUZKDBYufBAxqV8o
QvjLixpsI9LWNjBFOxld9ta50kkSrcWVt/0hbL1yGFaS5k+dXgfZsj1sjsb6WU9B
EjXviKeMINk68ee9YyXPZH9O5IRcZHH8S2OLzk7OO+eHUh70emEDqzNgDEFwZU1m
f1IA0REjcqPJK4r4rnkxtCWGYIcK3LH1iyeWk3/tOtoY0pZiytNux8q45owmStNS
h/VFp7RfKTsCIFk3tnG80jsr8i8VdaaQBDw5o9OBIAFkWNT04tI8O3BrJEUWrHRh
T9ffhdYce0szJtHx6X82onCoxMfkAadgdKxpYgu1Oq7C8wGKrfkarT0mCFuvaAoL
7UHbfcUF45ON/C8pbm4CEX8/EjFZbnAmyhVbYsPGUtDGKwEItltfn51SsFIDNnna
5DpZWtg8nIUPeVWy5wJ5NFZPstfsop1YC32PFXb5iPGJDC8EWZKMSdHygf2CG4KQ
POljOjlP+2Jr3cA9e2R9EMOobrkY5hBoax4phMPB5aeb77NOLor226neXE6P/zqf
13g90v391TIXbMJLLCtwL2ivJQ/FwPo1/Q5HZd7edmrkxRpaZaw=
=lXWr
-----END PGP SIGNATURE-----

-- 
You received this message because you are subscribed to the Google Groups 
"qubes-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to qubes-devel+unsubscr...@googlegroups.com.
To post to this group, send email to qubes-devel@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/qubes-devel/20190626095057.GA1693%40mutt.
For more options, visit https://groups.google.com/d/optout.

Reply via email to