summaryrefslogtreecommitdiff
path: root/fs/smb/client/inode.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/smb/client/inode.c')
-rw-r--r--fs/smb/client/inode.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/smb/client/inode.c b/fs/smb/client/inode.c
index f2eff1138ed0..35c5557d5ea1 100644
--- a/fs/smb/client/inode.c
+++ b/fs/smb/client/inode.c
@@ -1283,8 +1283,13 @@ static int cifs_get_fattr(struct cifs_open_info_data *data,
*/
if (!data) {
+ bool is_dir = false;
+
+ if (inode && *inode)
+ is_dir = S_ISDIR((*inode)->i_mode);
+
rc = server->ops->query_path_info(xid, tcon, cifs_sb,
- full_path, &tmp_data);
+ full_path, &tmp_data, is_dir);
data = &tmp_data;
}
@@ -1470,7 +1475,7 @@ static int smb311_posix_get_fattr(struct cifs_open_info_data *data,
*/
if (!data) {
rc = server->ops->query_path_info(xid, tcon, cifs_sb,
- full_path, &tmp_data);
+ full_path, &tmp_data, false);
data = &tmp_data;
}