summaryrefslogtreecommitdiff
path: root/fs/nfsd
diff options
context:
space:
mode:
authorPaulo Alcantara (SUSE) <pc@cjr.nz>2019-12-04 17:38:02 -0300
committerSteve French <stfrench@microsoft.com>2020-01-26 19:24:16 -0600
commit06d57378bcc9b2c33640945174842115593795d1 (patch)
treebcb8b54174a3b4c3ed19ddf49ec95768950250c7 /fs/nfsd
parentff2f7fc08268f266372c30a815349749e8499eb5 (diff)
cifs: Fix potential deadlock when updating vol in cifs_reconnect()
We can't acquire volume lock while refreshing the DFS cache because cifs_reconnect() may call dfs_cache_update_vol() while we are walking through the volume list. To prevent that, make vol_info refcounted, create a temp list with all volumes eligible for refreshing, and then use it without any locks held. Besides, replace vol_lock with a spinlock and protect cache_ttl from concurrent accesses or changes. Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/nfsd')
0 files changed, 0 insertions, 0 deletions