diff options
author | Paul Aurich <paul@darkrain42.org> | 2025-05-06 22:28:09 -0700 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2025-05-07 15:24:46 -0500 |
commit | 3ca02e63edccb78ef3659bebc68579c7224a6ca2 (patch) | |
tree | 91bc586c7988d6550311fe7382f6352b09ea5dd2 /rust/helpers/platform.c | |
parent | d90b023718a17d308d831fde36b3bb6fa3b511e0 (diff) |
smb: client: Avoid race in open_cached_dir with lease breaks
A pre-existing valid cfid returned from find_or_create_cached_dir might
race with a lease break, meaning open_cached_dir doesn't consider it
valid, and thinks it's newly-constructed. This leaks a dentry reference
if the allocation occurs before the queued lease break work runs.
Avoid the race by extending holding the cfid_list_lock across
find_or_create_cached_dir and when the result is checked.
Cc: stable@vger.kernel.org
Reviewed-by: Henrique Carvalho <henrique.carvalho@suse.com>
Signed-off-by: Paul Aurich <paul@darkrain42.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'rust/helpers/platform.c')
0 files changed, 0 insertions, 0 deletions