[patch v2] CIFS: cleanup min_t() cast in cifs_read()
Dan Carpenter
dan.carpenter at oracle.com
Tue Oct 18 03:41:35 MDT 2011
Smatch complains that the cast to "int" in min_t() changes very large
values of current_read_size into negative values and so min_t()
could return the wrong value. I removed the const as well, as that
doesn't do anything here.
Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
---
v2: use "uint" instead of "u32".
diff --git a/fs/cifs/file.c b/fs/cifs/file.c
index ab85699..34be15a 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -1900,13 +1900,13 @@ static ssize_t cifs_read(struct file *file, char *read_data, size_t read_size,
for (total_read = 0, current_offset = read_data;
read_size > total_read;
total_read += bytes_read, current_offset += bytes_read) {
- current_read_size = min_t(const int, read_size - total_read,
+ current_read_size = min_t(uint, 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,
+ current_read_size = min_t(uint, current_read_size,
CIFSMaxBufSize);
}
rc = -EAGAIN;
More information about the samba-technical
mailing list