summaryrefslogtreecommitdiff
path: root/fs/smb/client/cached_dir.h
diff options
context:
space:
mode:
authorPaulo Alcantara <pc@manguebit.com>2023-10-05 22:04:25 +0300
committerSteve French <stfrench@microsoft.com>2023-10-12 17:41:04 +0300
commite95f3f74465072c2545d8e65a3c3a96e37129cf8 (patch)
treed0301b7a7efda7e19b0f158d78c308dd7507d929 /fs/smb/client/cached_dir.h
parent94f6f0550c625fab1f373bb86a6669b45e9748b3 (diff)
downloadlinux-e95f3f74465072c2545d8e65a3c3a96e37129cf8.tar.xz
smb: client: make laundromat a delayed worker
By having laundromat kthread processing cached directories on every second turned out to be overkill, especially when having multiple SMB mounts. Relax it by using a delayed worker instead that gets scheduled on every @dir_cache_timeout (default=30) seconds per tcon. This also fixes the 1s delay when tearing down tcon. Signed-off-by: Paulo Alcantara (SUSE) <pc@manguebit.com> Reviewed-by: Shyam Prasad N <sprasad@microsoft.com> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/smb/client/cached_dir.h')
-rw-r--r--fs/smb/client/cached_dir.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/smb/client/cached_dir.h b/fs/smb/client/cached_dir.h
index a82ff2cea789..81ba0fd5cc16 100644
--- a/fs/smb/client/cached_dir.h
+++ b/fs/smb/client/cached_dir.h
@@ -57,7 +57,7 @@ struct cached_fids {
spinlock_t cfid_list_lock;
int num_entries;
struct list_head entries;
- struct task_struct *laundromat;
+ struct delayed_work laundromat_work;
};
extern struct cached_fids *init_cached_dirs(void);