| From 3873d064b8538686bbbd4b858dc8a07db1f7f43a Mon Sep 17 00:00:00 2001 |
| From: Helge Deller <deller@gmx.de> |
| Date: Mon, 2 Dec 2013 19:59:31 +0100 |
| Subject: nfs: fix do_div() warning by instead using sector_div() |
| |
| From: Helge Deller <deller@gmx.de> |
| |
| commit 3873d064b8538686bbbd4b858dc8a07db1f7f43a upstream. |
| |
| When compiling a 32bit kernel with CONFIG_LBDAF=n the compiler complains like |
| shown below. Fix this warning by instead using sector_div() which is provided |
| by the kernel.h header file. |
| |
| fs/nfs/blocklayout/extents.c: In function ‘normalize’: |
| include/asm-generic/div64.h:43:28: warning: comparison of distinct pointer types lacks a cast [enabled by default] |
| fs/nfs/blocklayout/extents.c:47:13: note: in expansion of macro ‘do_div’ |
| nfs/blocklayout/extents.c:47:2: warning: right shift count >= width of type [enabled by default] |
| fs/nfs/blocklayout/extents.c:47:2: warning: passing argument 1 of ‘__div64_32’ from incompatible pointer type [enabled by default] |
| include/asm-generic/div64.h:35:17: note: expected ‘uint64_t *’ but argument is of type ‘sector_t *’ |
| extern uint32_t __div64_32(uint64_t *dividend, uint32_t divisor); |
| |
| Signed-off-by: Helge Deller <deller@gmx.de> |
| Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/nfs/blocklayout/extents.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/fs/nfs/blocklayout/extents.c |
| +++ b/fs/nfs/blocklayout/extents.c |
| @@ -44,7 +44,7 @@ |
| static inline sector_t normalize(sector_t s, int base) |
| { |
| sector_t tmp = s; /* Since do_div modifies its argument */ |
| - return s - do_div(tmp, base); |
| + return s - sector_div(tmp, base); |
| } |
| |
| static inline sector_t normalize_up(sector_t s, int base) |