On Sat, Oct 13, 2018 at 4:28 PM, Chris Murphy <li...@colorremedies.com> wrote: > Is it practical and desirable to make Btrfs based OS installation > images reproducible? Or is Btrfs simply too complex and > non-deterministic? [1] > > The main three problems with Btrfs right now for reproducibility are: > a. many objects have uuids other than the volume uuid; and mkfs only > lets us set the volume uuid > b. atime, ctime, mtime, otime; and no way to make them all the same > c. non-deterministic allocation of file extents, compression, inode > assignment, logical and physical address allocation
d. generation, just pick a consistent default because the entire image is made with mkfs and then never rw mounted so it's not a problem > - Possibly disallow subvolumes and snapshots There's no actual mechanism to do either of these with mkfs, so it's not a problem. And if a sprout is created, it's fine for newly created subvolumes to follow the usual behavior of having unique UUID and incrementing generation. Thing is, the sprout will inherit the seeds preset chunk uuid, which while it shouldn't cause a problem is a kind of violation of uuid uniqueness; but ultimately I'm not sure how big of a problem it is for such uuids to spread. -- Chris Murphy