Loading fs/cifs/CHANGES +3 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,9 @@ Fix mtime bouncing around from local idea of last write times to remote time. Fix hang (in i_size_read) when simultaneous size update of same remote file on smp system corrupts sequence number. Do not reread unnecessarily partial page (which we are about to overwrite anyway) when writing out file opened rw. When DOS attribute of file on non-Unix server's file changes on the server side from read-only back to read-write, reflect this change in default file mode (we had been leaving a file's mode read-only until the inode were reloaded) Version 1.47 ------------ Loading fs/cifs/inode.c +6 −0 Original line number Diff line number Diff line Loading @@ -494,6 +494,12 @@ int cifs_get_inode_info(struct inode **pinode, mode e.g. 555 */ if (cifsInfo->cifsAttrs & ATTR_READONLY) inode->i_mode &= ~(S_IWUGO); else if ((inode->i_mode & S_IWUGO) == 0) /* the ATTR_READONLY flag may have been */ /* changed on server -- set any w bits */ /* allowed by mnt_file_mode */ inode->i_mode |= (S_IWUGO & cifs_sb->mnt_file_mode); /* BB add code here - validate if device or weird share or device type? */ } Loading fs/cifs/readdir.c +4 −0 Original line number Diff line number Diff line Loading @@ -219,6 +219,10 @@ static void fill_in_inode(struct inode *tmp_inode, int new_buf_type, tmp_inode->i_mode |= S_IFREG; if (attr & ATTR_READONLY) tmp_inode->i_mode &= ~(S_IWUGO); else if ((tmp_inode->i_mode & S_IWUGO) == 0) /* the ATTR_READONLY flag may have been changed on */ /* server -- set any w bits allowed by mnt_file_mode */ tmp_inode->i_mode |= (S_IWUGO & cifs_sb->mnt_file_mode); } /* could add code here - to validate if device or weird share type? */ /* can not fill in nlink here as in qpathinfo version and Unx search */ Loading Loading
fs/cifs/CHANGES +3 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,9 @@ Fix mtime bouncing around from local idea of last write times to remote time. Fix hang (in i_size_read) when simultaneous size update of same remote file on smp system corrupts sequence number. Do not reread unnecessarily partial page (which we are about to overwrite anyway) when writing out file opened rw. When DOS attribute of file on non-Unix server's file changes on the server side from read-only back to read-write, reflect this change in default file mode (we had been leaving a file's mode read-only until the inode were reloaded) Version 1.47 ------------ Loading
fs/cifs/inode.c +6 −0 Original line number Diff line number Diff line Loading @@ -494,6 +494,12 @@ int cifs_get_inode_info(struct inode **pinode, mode e.g. 555 */ if (cifsInfo->cifsAttrs & ATTR_READONLY) inode->i_mode &= ~(S_IWUGO); else if ((inode->i_mode & S_IWUGO) == 0) /* the ATTR_READONLY flag may have been */ /* changed on server -- set any w bits */ /* allowed by mnt_file_mode */ inode->i_mode |= (S_IWUGO & cifs_sb->mnt_file_mode); /* BB add code here - validate if device or weird share or device type? */ } Loading
fs/cifs/readdir.c +4 −0 Original line number Diff line number Diff line Loading @@ -219,6 +219,10 @@ static void fill_in_inode(struct inode *tmp_inode, int new_buf_type, tmp_inode->i_mode |= S_IFREG; if (attr & ATTR_READONLY) tmp_inode->i_mode &= ~(S_IWUGO); else if ((tmp_inode->i_mode & S_IWUGO) == 0) /* the ATTR_READONLY flag may have been changed on */ /* server -- set any w bits allowed by mnt_file_mode */ tmp_inode->i_mode |= (S_IWUGO & cifs_sb->mnt_file_mode); } /* could add code here - to validate if device or weird share type? */ /* can not fill in nlink here as in qpathinfo version and Unx search */ Loading