Re: [PATCH] ntb: test: fix pointer size warning

From: Jiang, Dave
Date: Fri Mar 18 2016 - 13:15:15 EST


On Fri, 2016-03-18 at 10:11 -0700, Brian Norris wrote:
> drivers/ntb/test/ntb_perf.c: In function âperf_copyâ:
> drivers/ntb/test/ntb_perf.c:213:10: warning: cast from pointer to
> integer of different size [-Wpointer-to-int-cast]
> drivers/ntb/test/ntb_perf.c:214:14: warning: cast from pointer to
> integer of different size [-Wpointer-to-int-cast]
>
> On 32-bit systems, we are casting a 32-bit pointer to a 64-bit value.
> This shouldn't cause functional problems, but we might as well fix
> the
> warning and allow 32-bit arithmetic for 32-bit systems.
>
> Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>
> Cc: Dave Jiang <dave.jiang@xxxxxxxxx>
> Cc: Jon Mason <jdmason@xxxxxxxx>
> Cc: Allen Hubbe <Allen.Hubbe@xxxxxxx>

Acked-by: Dave Jiang <dave.jiang@xxxxxxxxx>

> ---
> Âdrivers/ntb/test/ntb_perf.c | 6 +++---
> Â1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/ntb/test/ntb_perf.c
> b/drivers/ntb/test/ntb_perf.c
> index c8a37ba4b4f9..835e2686998d 100644
> --- a/drivers/ntb/test/ntb_perf.c
> +++ b/drivers/ntb/test/ntb_perf.c
> @@ -189,7 +189,7 @@ static ssize_t perf_copy(struct pthr_ctx *pctx,
> char *dst,
> Â dma_cookie_t cookie;
> Â size_t src_off, dst_off;
> Â struct perf_mw *mw = &perf->mw;
> - u64 vbase, dst_vaddr;
> + uintptr_t vbase, dst_vaddr;
> Â dma_addr_t dst_phys;
> Â int retries = 0;
> Â
> @@ -210,8 +210,8 @@ static ssize_t perf_copy(struct pthr_ctx *pctx,
> char *dst,
> Â if (!is_dma_copy_aligned(device, src_off, dst_off, size))
> Â return -ENODEV;
> Â
> - vbase = (u64)(u64 *)mw->vbase;
> - dst_vaddr = (u64)(u64 *)dst;
> + vbase = (uintptr_t)(u64 *)mw->vbase;
> + dst_vaddr = (uintptr_t)(u64 *)dst;
> Â dst_phys = mw->phys_addr + (dst_vaddr - vbase);
> Â
> Â unmap = dmaengine_get_unmap_data(device->dev, 1,
> GFP_NOWAIT);