On 05/19/2017 05:31 AM, Bart Van Assche wrote: > On Fri, 2017-05-19 at 03:38 +0200, Xose Vazquez Perez wrote: >> Rationale: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html >> >> __LP64__ >> _LP64 >> These macros are defined, with value 1, if (and only if) the compilation is >> for a target where long int and pointer both use 64-bits and int uses 32-bit. >> >> >> Cc: Christophe Varoqui <christophe.varoqui@xxxxxxxxxxx> >> Cc: device-mapper development <dm-devel@xxxxxxxxxx> >> Signed-off-by: Xose Vazquez Perez <xose.vazquez@xxxxxxxxx> >> --- >> kpartx/lopart.c | 7 +++---- >> 1 file changed, 3 insertions(+), 4 deletions(-) >> >> diff --git a/kpartx/lopart.c b/kpartx/lopart.c >> index 4e6dab4..3c16eb0 100644 >> --- a/kpartx/lopart.c >> +++ b/kpartx/lopart.c >> @@ -38,11 +38,10 @@ >> #define LOOP_CTL_GET_FREE 0x4C82 >> #endif >> >> -#if !defined (__alpha__) && !defined (__ia64__) && !defined (__x86_64__) \ >> - && !defined (__s390x__) >> -#define int2ptr(x) ((void *) ((int) x)) >> -#else >> +#if defined (__LP64__) >> #define int2ptr(x) ((void *) ((long) x)) >> +#else >> +#define int2ptr(x) ((void *) ((int) x)) >> #endif >> >> static char * > > Hello Xose, > > Since there is only one user of int2ptr(), please remove the macro definitions > and use the following construct: (void *)(uintptr_t)(...). No time for a proper patch, use it as an interim fix. -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel