Thanks Darrick for the review
On 4/16/25 18:07, Darrick J. Wong wrote: The protofile format that
mkfs.xfs uses has been static for 52 years, I don't know that
expending a large amount of effort on it is worth the time. If you
really must have reproducible filesystem images, would it be easier
to allow overriding current_time() via environment vars?
It's nice to preserve the source timestamps, for example, in case we
have also reproducible builds for packages and rootfs (in tar.gz format)
Fixing it to a set time would lose that information in the "translation"
On 4/16/25 18:07, Darrick J. Wong wrote: (I also don't really get
why anyone cares about bit-reproducible filesystem images; the only
behavioral guarantees are the userspace interface contract.
Filesystem drivers have wide latitude to do whatever they want under
the covers.)
For distribution of said disks and avoiding re-doing work (eg: if the
checksum matches, we know there were no changes, thus we can skip the
publication CI)
I've reviewed the patch, in order to not change the prototype file
specification whatsoever.
The new patch will leverage a comment that `xfs_protofile` inserts since
its first iteration:
": Descending path [foo]"
This way, if the comment is not found, like for older files, the new
behavior will simply be ignored.
This should address the compatibility concerns.
I've tested this incoming patch with a matrix of
"old-protofiles/new-mkfs/new-protofile/old-mkfs" and it seems there are
no compatibility issues.
Thanks
L.