Skip to content

NAS-109929: 21.08: Linux 4.11 compat: statx support #18

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
2 commits merged into from
Aug 5, 2021

Conversation

ghost
Copy link

@ghost ghost commented Aug 5, 2021

openzfs#12432

Jira: NAS-109929

ryao and others added 2 commits August 3, 2021 07:12
Linux 4.11 added a new statx system call that allows us to expose crtime
as btime. We do this by caching crtime in the znode to match how atime,
ctime and mtime are cached in the inode.

statx also introduced a new way of reporting whether the immutable,
append and nodump bits have been set. It adds support for reporting
compression and encryption, but the semantics on other filesystems is
not just to report compression/encryption, but to allow it to be turned
on/off at the file level. We do not support that.

We could implement semantics where we refuse to allow user modification
of the bit, but we would need to do a dnode_hold() in zfs_znode_alloc()
to find out encryption/compression information. That would introduce
locking that will have a minor (although unmeasured) performance cost.
It also would be inferior to zdb, which reports far more detailed
information. We therefore omit reporting of encryption/compression
through statx in favor of recommending that users interested in such
information use zdb.

Signed-off-by: Richard Yao <[email protected]>
Closes openzfs#8507
Signed-off-by: Ryan Moeller <[email protected]>
@ghost ghost requested review from amotin and rick-mesta August 5, 2021 13:22
@ghost ghost merged commit e2465c1 into truenas/zfs-2.1-release Aug 5, 2021
@ghost ghost deleted the NAS-109929 branch August 5, 2021 16:13
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants