summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorSteve French <stfrench@microsoft.com>2019-10-12 02:36:13 +0200
committerSteve French <stfrench@microsoft.com>2019-10-21 02:19:49 +0200
commit553292a6342bc9e5636953ac6e20bccedaacbd1c (patch)
tree55fbe34d42bf637811fda0caba63f1bc120f166b /fs
parentcifs: Handle -EINPROGRESS only when noblockcnt is set (diff)
downloadlinux-553292a6342bc9e5636953ac6e20bccedaacbd1c.tar.xz
linux-553292a6342bc9e5636953ac6e20bccedaacbd1c.zip
cifs: clarify comment about timestamp granularity for old servers
It could be confusing why we set granularity to 1 seconds rather than 2 seconds (1 second is the max the VFS allows) for these mounts to very old servers ... Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/cifs/cifsfs.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
index c049c7b3aa87..1a135d1b85bd 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@ -169,7 +169,13 @@ cifs_read_super(struct super_block *sb)
else
sb->s_maxbytes = MAX_NON_LFS;
- /* Some very old servers like DOS and OS/2 used 2 second granularity */
+ /*
+ * Some very old servers like DOS and OS/2 used 2 second granularity
+ * (while all current servers use 100ns granularity - see MS-DTYP)
+ * but 1 second is the maximum allowed granularity for the VFS
+ * so for old servers set time granularity to 1 second while for
+ * everything else (current servers) set it to 100ns.
+ */
if ((tcon->ses->server->vals->protocol_id == SMB10_PROT_ID) &&
((tcon->ses->capabilities &
tcon->ses->server->vals->cap_nt_find) == 0) &&