diff options
author | Ronnie Sahlberg <lsahlber@redhat.com> | 2020-07-15 00:18:05 +0200 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2020-08-03 01:00:25 +0200 |
commit | 8e408fc9fd48664495147a4213467d99a8922c9d (patch) | |
tree | f5965c8ff6de51a441c0912575d4340c1a64b63f /fs/cifs/smb1ops.c | |
parent | cifs`: handle ERRBaduid for SMB1 (diff) | |
download | linux-8e408fc9fd48664495147a4213467d99a8922c9d.tar.xz linux-8e408fc9fd48664495147a4213467d99a8922c9d.zip |
cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails
RHBZ 1145308
Some very old server may not support SetPathInfo to adjust the timestamps
of directories. For these servers, try to open the directory and use SetFileInfo.
Minor correction to patch included that was
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Tested-by: Kenneth D'souza <kdsouza@redhat.com>
Diffstat (limited to 'fs/cifs/smb1ops.c')
-rw-r--r-- | fs/cifs/smb1ops.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifs/smb1ops.c b/fs/cifs/smb1ops.c index 197ed455e657..80287c26cfac 100644 --- a/fs/cifs/smb1ops.c +++ b/fs/cifs/smb1ops.c @@ -688,7 +688,7 @@ cifs_mkdir_setinfo(struct inode *inode, const char *full_path, dosattrs = cifsInode->cifsAttrs|ATTR_READONLY; info.Attributes = cpu_to_le32(dosattrs); rc = CIFSSMBSetPathInfo(xid, tcon, full_path, &info, cifs_sb->local_nls, - cifs_remap(cifs_sb)); + cifs_sb); if (rc == 0) cifsInode->cifsAttrs = dosattrs; } @@ -783,7 +783,7 @@ smb_set_file_info(struct inode *inode, const char *full_path, tcon = tlink_tcon(tlink); rc = CIFSSMBSetPathInfo(xid, tcon, full_path, buf, cifs_sb->local_nls, - cifs_remap(cifs_sb)); + cifs_sb); if (rc == 0) { cinode->cifsAttrs = le32_to_cpu(buf->Attributes); goto out; |