--- util-linux-2.12/disk-utils/elvtune.c.orig 2002-03-08 23:57:49.000000000 +0100 +++ util-linux-2.12/disk-utils/elvtune.c 2003-12-28 00:47:21.716360592 +0100 @@ -37,8 +37,8 @@ int max_bomb_segments; } blkelv_ioctl_arg_t; -#define BLKELVGET _IOR(0x12,106,sizeof(blkelv_ioctl_arg_t)) -#define BLKELVSET _IOW(0x12,107,sizeof(blkelv_ioctl_arg_t)) +#define BLKELVGET _IOR(0x12,106,size_t) /* blkelv_ioctl_arg_t, broken by sizeof() */ +#define BLKELVSET _IOW(0x12,107,size_t) /* blkelv_ioctl_arg_t, broken by sizeof() */ static void usage(void) { --- util-linux-2.12/disk-utils/blockdev.c.orig 2003-12-28 00:46:18.483973376 +0100 +++ util-linux-2.12/disk-utils/blockdev.c 2003-12-28 00:47:12.833710960 +0100 @@ -24,8 +24,8 @@ #define BLKRASET _IO(0x12,98) #define BLKRAGET _IO(0x12,99) #define BLKSSZGET _IO(0x12,104) -#define BLKBSZGET _IOR(0x12,112,sizeof(int)) -#define BLKBSZSET _IOW(0x12,113,sizeof(int)) +#define BLKBSZGET _IOR(0x12,112,size_t) /* int, broken by sizeof() */ +#define BLKBSZSET _IOW(0x12,113,size_t) /* int, broken by sizeof() */ #endif /* Maybe could be included */ --- util-linux-2.12/fdisk/common.h.orig 2003-07-13 15:59:53.000000000 +0200 +++ util-linux-2.12/fdisk/common.h 2003-12-28 00:52:43.568431640 +0100 @@ -6,7 +6,7 @@ #define BLKGETSIZE _IO(0x12,96) /* return device size */ #define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */ #define BLKSSZGET _IO(0x12,104) /* get block device sector size */ -#define BLKGETSIZE64 _IOR(0x12,114,8) /* 8 = sizeof(u64) */ +#define BLKGETSIZE64 _IOR(0x12,114,size_t) /* u64, broken by sizeof(); sizeof(8) was the same on 32-bit, but not on 64-bit archs */ /* including also fails */ struct hd_geometry {