rocker: fix harmless warning on 32-bit machines
authorArnd Bergmann <arnd@arndb.de>
Tue, 13 Jan 2015 14:23:52 +0000 (15:23 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 Jan 2015 21:56:40 +0000 (16:56 -0500)
The rocker driver tries to assign a pointer to a 64-bit integer
and then back to a pointer. This is safe on all architectures,
but causes a compiler warning when pointers are shorter than
64-bit:

rocker/rocker.c: In function 'rocker_desc_cookie_ptr_get':
rocker/rocker.c:809:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  return (void *) desc_info->desc->cookie;
         ^

This adds another cast to uintptr_t to tell the compiler
that it's safe.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/rocker/rocker.c

index 2f398fa4b9e607546e8f1255ec7a53bfa018114c..cad8cf962cdf86fba6a1d407bf876fe602b140fc 100644 (file)
@@ -806,13 +806,13 @@ static bool rocker_desc_gen(struct rocker_desc_info *desc_info)
 
 static void *rocker_desc_cookie_ptr_get(struct rocker_desc_info *desc_info)
 {
-       return (void *) desc_info->desc->cookie;
+       return (void *)(uintptr_t)desc_info->desc->cookie;
 }
 
 static void rocker_desc_cookie_ptr_set(struct rocker_desc_info *desc_info,
                                       void *ptr)
 {
-       desc_info->desc->cookie = (long) ptr;
+       desc_info->desc->cookie = (uintptr_t) ptr;
 }
 
 static struct rocker_desc_info *