Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 156ecb2d authored by Steve French's avatar Steve French
Browse files

[CIFS] Fix to problem with getattr caused by invalidate simplification patch



Fix to earlier "Simplify invalidate part (try #6)" patch
That patch caused problems with connectathon test 5.

Reviewed-by: default avatarJeff Layton <jlayton@samba.org>
Signed-off-by: default avatarPavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent ceec1e0f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -617,9 +617,11 @@ static loff_t cifs_llseek(struct file *file, loff_t offset, int origin)
		if (!CIFS_I(inode)->clientCanCacheRead && inode->i_mapping &&
		    inode->i_mapping->nrpages != 0) {
			rc = filemap_fdatawait(inode->i_mapping);
			if (rc) {
				mapping_set_error(inode->i_mapping, rc);
				return rc;
			}
		}
		/*
		 * Some applications poll for the file length in this strange
		 * way so we must seek to end on non-oplocked files by
+4 −2
Original line number Diff line number Diff line
@@ -1805,9 +1805,11 @@ int cifs_getattr(struct vfsmount *mnt, struct dentry *dentry,
	if (!CIFS_I(inode)->clientCanCacheRead && inode->i_mapping &&
	    inode->i_mapping->nrpages != 0) {
		rc = filemap_fdatawait(inode->i_mapping);
		if (rc) {
			mapping_set_error(inode->i_mapping, rc);
			return rc;
		}
	}

	rc = cifs_revalidate_dentry_attr(dentry);
	if (rc)