CIFS: cleanup min_t() cast in cifs_read()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 18 Oct 2011 09:41:35 +0000 (12:41 +0300)
committerSteve French <smfrench@gmail.com>
Tue, 18 Oct 2011 15:33:44 +0000 (10:33 -0500)
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@oracle.com>
Signed-off-by: Steve French <smfrench@gmail.com>
fs/cifs/file.c

index 7f84ece..852d1f3 100644 (file)
@@ -1904,13 +1904,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;