Commit f9f5c817 authored by Steve French's avatar Steve French
Browse files

[CIFS] Add support for legacy servers part six. Fix read syntax so


we do not request more than negotiated buffer size even if buffer
size is small (smaller than one page)

Signed-off-by: default avatarSteve French <(sfrench@us.ibm.com)>
parent eafe8701
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1278,6 +1278,13 @@ static ssize_t cifs_read(struct file *file, char *read_data, size_t read_size,
	     total_read += bytes_read, current_offset += bytes_read) {
		current_read_size = min_t(const int, read_size - total_read,
					  cifs_sb->rsize);
		/* For windows me and 9x we do not want to request more
		than it negotiated since it will refuse the read then */
		if((pTcon->ses) && 
			!(pTcon->ses->capabilities & CAP_LARGE_FILES)) {
			current_read_size = min_t(const int, current_read_size,
					pTcon->ses->server->maxBuf - 128);
		}
		rc = -EAGAIN;
		while (rc == -EAGAIN) {
			if ((open_file->invalidHandle) &&