linux-stable/fs/cifs
Steve French 4c9f948142 cifs: Add new mount parameter "acdirmax" to allow caching directory metadata
nfs and cifs on Linux currently have a mount parameter "actimeo" to control
metadata (attribute) caching but cifs does not have additional mount
parameters to allow distinguishing between caching directory metadata
(e.g. needed to revalidate paths) and that for files.

Add new mount parameter "acdirmax" to allow caching metadata for
directories more loosely than file data.  NFS adjusts metadata
caching from acdirmin to acdirmax (and another two mount parms
for files) but to reduce complexity, it is safer to just introduce
the one mount parm to allow caching directories longer. The
defaults for acdirmax and actimeo (for cifs.ko) are conservative,
1 second (NFS defaults acdirmax to 60 seconds). For many workloads,
setting acdirmax to a higher value is safe and will improve
performance.  This patch leaves unchanged the default values
for caching metadata for files and directories but gives the
user more flexibility in adjusting them safely for their workload
via the new mount parm.

Signed-off-by: Steve French <stfrench@microsoft.com>
Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com>
Reviewed-By: Tom Talpey <tom@talpey.com>
2021-02-25 11:47:42 -06:00
..
asn1.c cifs: remove bogus debug code 2020-10-22 12:17:52 -05:00
cache.c cifs: Make extract_sharename function public 2020-12-14 09:16:22 -06:00
cifs_debug.c cifs: clarify hostname vs ip address in /proc/fs/cifs/DebugData 2021-02-22 21:20:44 -06:00
cifs_debug.h cifs: Standardize logging output 2020-06-01 00:10:18 -05:00
cifs_dfs_ref.c cifs: fix dfs domain referrals 2021-01-28 21:40:43 -06:00
cifs_fs_sb.h cifs: move [brw]size from cifs_sb to cifs_sb->ctx 2020-12-14 09:26:30 -06:00
cifs_ioctl.h cifs: add SMB3 change notification support 2020-02-06 09:14:28 -06:00
cifs_spnego.c cifs: switch servers depending on binding state 2019-11-25 01:16:30 -06:00
cifs_spnego.h
cifs_swn.c cifs: Fix inconsistent IS_ERR and PTR_ERR 2021-02-19 21:29:10 -06:00
cifs_swn.h cifs: Send witness register messages to userspace daemon in echo task 2020-12-14 09:16:23 -06:00
cifs_unicode.c Convert trailing spaces and periods in path components 2020-10-11 23:57:18 -05:00
cifs_unicode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
cifs_uniupr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
cifsacl.c cifs: If a corrupted DACL is returned by the server, bail out. 2021-02-24 11:41:43 -06:00
cifsacl.h cifs: Fix cifsacl ACE mask for group and others. 2021-02-22 21:20:44 -06:00
cifsencrypt.c cifs: change confusing field serverName (to ip_addr) 2021-02-22 21:20:43 -06:00
cifsfs.c cifs: Add new mount parameter "acdirmax" to allow caching directory metadata 2021-02-25 11:47:42 -06:00
cifsfs.h cifs: update internal module version number 2020-12-16 21:56:42 -06:00
cifsglob.h TCON Reconnect during STATUS_NETWORK_NAME_DELETED 2021-02-23 04:16:00 -06:00
cifspdu.h SMB3: Add support for getting and setting SACLs 2020-12-18 13:25:57 -06:00
cifsproto.h cifs: fix dfs domain referrals 2021-01-28 21:40:43 -06:00
cifsroot.c cifs: Standardize logging output 2020-06-01 00:10:18 -05:00
cifssmb.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
connect.c cifs: Add new mount parameter "acdirmax" to allow caching directory metadata 2021-02-25 11:47:42 -06:00
dfs_cache.c cifs: fix dfs domain referrals 2021-01-28 21:40:43 -06:00
dfs_cache.h cifs: rename smb_vol as smb3_fs_context and move it to fs_context.h 2020-12-13 19:12:07 -06:00
dir.c cifs: report error instead of invalid when revalidating a dentry fails 2021-02-05 13:17:48 -06:00
dns_resolve.c keys: Pass the network namespace into request_key mechanism 2019-06-27 23:02:12 +01:00
dns_resolve.h
export.c docs: fs: convert docs without extension to ReST 2019-07-31 13:31:05 -06:00
file.c cifs: change confusing field serverName (to ip_addr) 2021-02-22 21:20:43 -06:00
fs_context.c cifs: Add new mount parameter "acdirmax" to allow caching directory metadata 2021-02-25 11:47:42 -06:00
fs_context.h cifs: Add new mount parameter "acdirmax" to allow caching directory metadata 2021-02-25 11:47:42 -06:00
fscache.c cifs: Make extract_sharename function public 2020-12-14 09:16:22 -06:00
fscache.h cifs: Make extract_sharename function public 2020-12-14 09:16:22 -06:00
inode.c cifs: move [brw]size from cifs_sb to cifs_sb->ctx 2020-12-14 09:26:30 -06:00
ioctl.c cifs: fix reference leak for tlink 2020-07-09 10:06:52 -05:00
Kconfig cifs: minor updates to Kconfig 2020-12-14 09:16:22 -06:00
link.c smb311: add support for using info level for posix extensions query 2020-06-12 08:54:12 -05:00
Makefile cifs: Send witness register and unregister commands to userspace daemon 2020-12-14 09:16:22 -06:00
misc.c cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb 2020-12-14 09:16:23 -06:00
netlink.c cifs: Set witness notification handler for messages from userspace daemon 2020-12-14 09:16:22 -06:00
netlink.h cifs: Register generic netlink family 2020-12-14 09:16:22 -06:00
netmisc.c cifs`: handle ERRBaduid for SMB1 2020-08-02 18:00:25 -05:00
nterr.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
nterr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
ntlmssp.h
readdir.c cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb 2020-12-14 09:16:23 -06:00
rfc1002pdu.h
sess.c cifs: change confusing field serverName (to ip_addr) 2021-02-22 21:20:43 -06:00
smb1ops.c cifs: move [brw]size from cifs_sb to cifs_sb->ctx 2020-12-14 09:26:30 -06:00
smb2file.c cifs: allow unlock flock and OFD lock across fork 2020-03-22 22:49:09 -05:00
smb2glob.h smb3.1.1: set gcm256 when requested 2020-10-19 15:11:11 -05:00
smb2inode.c smb3: add support for stat of WSL reparse points for special file types 2020-10-23 15:38:10 -05:00
smb2maperror.c cifs: map STATUS_ACCOUNT_LOCKED_OUT to -EACCES 2020-10-15 23:58:14 -05:00
smb2misc.c cifs: remove various function description warnings 2020-12-14 09:16:23 -06:00
smb2ops.c cifs: minor simplification to smb2_is_network_name_deleted 2021-02-23 04:16:41 -06:00
smb2pdu.c cifs: New optype for session operations. 2021-02-16 15:35:57 -06:00
smb2pdu.h smb3: Fix out-of-bounds bug in SMB2_negotiate() 2021-02-01 22:43:39 -06:00
smb2proto.h SMB3: Add support for getting and setting SACLs 2020-12-18 13:25:57 -06:00
smb2status.h cifs: don't use __constant_cpu_to_le32() 2019-05-07 23:24:54 -05:00
smb2transport.c smb3.1.1: set gcm256 when requested 2020-10-19 15:11:11 -05:00
smbdirect.c cifs: Fix fall-through warnings for Clang 2020-12-13 19:12:07 -06:00
smbdirect.h cifs: smbd: Do not schedule work to send immediate packet on every receive 2020-04-07 12:41:16 -05:00
smbencrypt.c fs: cifs: move from the crypto cipher API to the new DES library interface 2019-08-22 14:57:34 +10:00
smberr.h
smbfsctl.h smb3: add some missing definitions from MS-FSCC 2020-10-23 15:38:10 -05:00
trace.c smb3: Cleanup license mess 2019-01-24 09:37:33 -06:00
trace.h cifs: Identify a connection by a conn_id. 2021-02-16 15:48:02 -06:00
transport.c cifs: Identify a connection by a conn_id. 2021-02-16 15:48:02 -06:00
unc.c cifs: remove some minor warnings pointed out by kernel test robot 2020-12-14 09:16:23 -06:00
winucase.c Replace HTTP links with HTTPS ones: CIFS 2020-07-05 14:23:38 -06:00
xattr.c Add SMB 2 support for getting and setting SACLs 2020-12-18 23:32:04 -06:00