Commit 0450d208 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag '6.10-rc-smb-fix' of git://git.samba.org/sfrench/cifs-2.6

Pull smb client fix from Steve French:
 "An important fix to address recent netfs regression (data corruption)"

* tag '6.10-rc-smb-fix' of git://git.samba.org/sfrench/cifs-2.6:
  cifs: fix data corruption in read after invalidate
parents 7991c92f a395726c
...@@ -2465,7 +2465,8 @@ int ...@@ -2465,7 +2465,8 @@ int
cifs_revalidate_mapping(struct inode *inode) cifs_revalidate_mapping(struct inode *inode)
{ {
int rc; int rc;
unsigned long *flags = &CIFS_I(inode)->flags; struct cifsInodeInfo *cifs_inode = CIFS_I(inode);
unsigned long *flags = &cifs_inode->flags;
struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb); struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
/* swapfiles are not supposed to be shared */ /* swapfiles are not supposed to be shared */
...@@ -2482,6 +2483,7 @@ cifs_revalidate_mapping(struct inode *inode) ...@@ -2482,6 +2483,7 @@ cifs_revalidate_mapping(struct inode *inode)
if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_RW_CACHE) if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_RW_CACHE)
goto skip_invalidate; goto skip_invalidate;
cifs_inode->netfs.zero_point = cifs_inode->netfs.remote_i_size;
rc = filemap_invalidate_inode(inode, true, 0, LLONG_MAX); rc = filemap_invalidate_inode(inode, true, 0, LLONG_MAX);
if (rc) { if (rc) {
cifs_dbg(VFS, "%s: invalidate inode %p failed with rc %d\n", cifs_dbg(VFS, "%s: invalidate inode %p failed with rc %d\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment