Skip to content

Redfs rhel9 5 503.40.1#166

Merged
hbirth merged 2 commits into
DDNStorage:redfs-rhel9_5-503.40.1from
hbirth:redfs-rhel9_5-503.40.1
Jun 3, 2026
Merged

Redfs rhel9 5 503.40.1#166
hbirth merged 2 commits into
DDNStorage:redfs-rhel9_5-503.40.1from
hbirth:redfs-rhel9_5-503.40.1

Conversation

@hbirth

@hbirth hbirth commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

hbirth added 2 commits June 3, 2026 12:00
fuse_perm_getattr() requests only STATX_MODE | STATX_UID | STATX_GID.
fi->i_time is only advanced when the response covers STATX_BASIC_STATS in
full, so a perm-only refresh clears the perm bits from inval_mask but
leaves i_time at its old (expired) value.

Add fi->i_perm_time, updated whenever a refresh covers MODE|UID|GID
(always for the non-statx getattr path; conditionally on returned_attrs
for the statx path), and gate fuse_permission()'s sync decision on it
instead of i_time. fuse_update_get_attr() continues to use i_time so a
full stat() still re-queries the server when size/mtime/etc. expire.

Fixes: 09ed47b ("fuse: Optimize statx for permission checks by requesting only needed attributes")
Signed-off-by: Horst Birthelmer <horst@birthelmer.de>
(cherry picked from commit a2d3971)
…ing dentry

Signed-off-by: Horst Birthelmer <hbirthelmer@ddn.com>
(cherry picked from commit ec5c66b)
@hbirth hbirth requested review from cding-ddn and yongzech June 3, 2026 10:01
@hbirth hbirth merged commit 5163b06 into DDNStorage:redfs-rhel9_5-503.40.1 Jun 3, 2026
2 checks passed
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.

2 participants