Message ID | 1397414783-28098-1-git-send-email-geert@linux-m68k.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, 13 Apr 2014 20:46:21 +0200 Geert Uytterhoeven <geert@linux-m68k.org> wrote: > 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 7f25bba819a38ab7310024a9350655f374707e20 > ("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> > --- > PAGE_SIZE should really be size_t, but that would require lots of changes > all over the place. > > fs/cifs/file.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/cifs/file.c b/fs/cifs/file.c > index 8807442c94dd..8add25538a3b 100644 > --- a/fs/cifs/file.c > +++ b/fs/cifs/file.c > @@ -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) Reviewed-by: Jeff Layton <jlayton@poochiereds.net> -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/fs/cifs/file.c b/fs/cifs/file.c index 8807442c94dd..8add25538a3b 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c @@ -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)
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 7f25bba819a38ab7310024a9350655f374707e20 ("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> --- PAGE_SIZE should really be size_t, but that would require lots of changes all over the place. fs/cifs/file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)