diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index 27e97d43c75964eb0557c09f6f20dd75f6707eb7..db091c516c2a3a165bded54e1e7664d60d89ed8c 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c @@ -752,6 +752,9 @@ cifs_set_file_info(struct inode *inode, struct iattr *attrs, int xid, set_via_filehandle: rc = CIFSSMBSetFileInfo(xid, pTcon, &info_buf, netfid, netpid); + if (!rc) + cifsInode->cifsAttrs = dosattr; + if (open_file == NULL) CIFSSMBClose(xid, pTcon, netfid); else @@ -902,6 +905,7 @@ int cifs_unlink(struct inode *dir, struct dentry *dentry) if (rc == 0) drop_nlink(inode); } + cifsInode->cifsAttrs = dosattr; } out_reval: if (inode) {