cifs: Use min_t() when comparing "size_t" and "unsigned long"
authorGeert Uytterhoeven <geert@linux-m68k.org>
Sun, 13 Apr 2014 18:46:21 +0000 (20:46 +0200)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 13 Apr 2014 21:10:26 +0000 (14:10 -0700)
On 32 bit, size_t is "unsigned int", not "unsigned long", causing the
following warning when comparing with PAGE_SIZE, which is always "unsigned
long":

  fs/cifs/file.c: In function ‘cifs_readdata_to_iov’:
  fs/cifs/file.c:2757: warning: comparison of distinct pointer types lacks a cast

Introduced by commit 7f25bba819a3 ("cifs_iovec_read: keep iov_iter
between the calls of cifs_readdata_to_iov()"), which changed the
signedness of "remaining" and the code from min_t() to min().

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/cifs/file.c

index 8807442c94dd3323cbb7f9f8283c4f1c1a2d1480..8add25538a3b83135f1145fca58f77c51fff1ef9 100644 (file)
@@ -2754,7 +2754,7 @@ cifs_readdata_to_iov(struct cifs_readdata *rdata, struct iov_iter *iter)
 
        for (i = 0; i < rdata->nr_pages; i++) {
                struct page *page = rdata->pages[i];
-               size_t copy = min(remaining, PAGE_SIZE);
+               size_t copy = min_t(size_t, remaining, PAGE_SIZE);
                size_t written = copy_page_to_iter(page, 0, copy, iter);
                remaining -= written;
                if (written < copy && iov_iter_count(iter) > 0)