fshash.in, fshash.1: Don't reuse virtual inode numbers spuriously.
authorMark Wooding <mdw@distorted.org.uk>
Wed, 7 Feb 2024 19:03:33 +0000 (19:03 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Wed, 7 Feb 2024 19:03:33 +0000 (19:03 +0000)
commit340ea657349edb244b549f19edca902beee18ee9
tree56a445bfd74b1dbdb8316fc3172e64a00dc89114
parentaa747b421460f89b83f01ddc1c65736f6bb38d07
fshash.in, fshash.1: Don't reuse virtual inode numbers spuriously.

There was code to prevent collisions this when generating new virtual
inodes, but the code which was supposed to record which ones had been
generated so far was missing.

Of course, changing this breaks compatibility with old manifests, so we
need a mechanism to support that.

I wouldn't usually make two apparently unrelated changes like this in
one commit: I'd, say, introduce the compatibility machinery first, and
then fix the virtual-inode bug.  But that won't work: one of the things
compatibility version 2 should do is print a comment (so that you can
tell that a mismatch is because of this setting), but that needs to
arrive in the same change as the bug fix.

Sorry.
fshash.1
fshash.in