On Thu, Nov 14, 2019 at 3:37 PM Amir Goldstein amir73il@gmail.com wrote:
What Colin has now reported brings to light the fact that decoding lower file handles was also required for making inode numbers persistent.
So the bad_uuid condition is required for all of the above, not just for decoding origin.
Can we do a message that makes that somewhat more clearer?
What about the logs:
pr_warn("overlayfs: upper fs does not support xattr,
falling back to index=off and metacopy=off.\n"); pr_warn("overlayfs: upper fs does not support file handles, falling back to index=off.\n"); pr_warn("overlayfs: fs on '%s' does not support file handles, falling back to index=off,nfs_export=off.\n",
Should we also change them to reflect the fact the decoding origin is not supported???
Seems like a lot of hassle that will end up writing too much information that most people won't understand.
IIRC, we also do not guaranty persistent inode numbers for hardlinks when index=off.
As for the change in question (falling back => enforcing), if that bothers you, we can get rid of this change by testing emitting the print only if (ofs->config.nfs_export || ofs->config.index).
That makes sense.
It would also make sense to have a section about inode number persistence in the documentation.
Thanks, Miklos