summaryrefslogtreecommitdiff
path: root/crypto/fcrypt.c
diff options
context:
space:
mode:
authorEnzo Matsumiya <ematsumiya@suse.de>2025-09-29 18:08:24 -0300
committerEnzo Matsumiya <ematsumiya@suse.de>2025-10-07 12:47:47 -0300
commit1d77d34e710754c719e6227f88724eaede56b82a (patch)
tree3a5e45c2a4f769d683ad4c76f2e54cc49493206b /crypto/fcrypt.c
parent24f4274f02d11d9d0d5a2cba872acd46fa68dbaf (diff)
downloadlinux-1d77d34e710754c719e6227f88724eaede56b82a.tar.gz
linux-1d77d34e710754c719e6227f88724eaede56b82a.tar.bz2
linux-1d77d34e710754c719e6227f88724eaede56b82a.zip
smb: client: rework cached dirs synchronization
This patch adds usage of RCU and seqlocks for cached dir (list and entries). Traversing the list under RCU allows faster lookups (no locks) and also guarantees that entries being read are not gone (i.e. prevents UAF). seqlocks provides atomicity/consistency when reading entries, allowing callers to re-check cfid in case of write-side invalidation. Combined with refcounting, this new approach provides safety for callers and flexibility for future enhancements. Other: - now that we can inform lookups of cfid changes, set cfid->dentry earlier in open_cached_dir() to allow by-dentry lookups to find this cfid Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Diffstat (limited to 'crypto/fcrypt.c')
0 files changed, 0 insertions, 0 deletions