From: Keith Busch Date: Fri, 21 Apr 2017 15:27:10 +0000 (-0400) Subject: Fix compile for 32-bit X-Git-Tag: v1.3~12 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=44f8c69444e937a38488552f21dc7e5f89746cbf;p=users%2Fsagi%2Fnvme-cli.git Fix compile for 32-bit Incomplete pointer cast to 64-bit failed to compile. Fixing. https://github.com/linux-nvme/nvme-cli/issues/171 Signed-off-by: Keith Busch --- diff --git a/wdc-nvme.c b/wdc-nvme.c index 8028f61f..d6e3a8cd 100644 --- a/wdc-nvme.c +++ b/wdc-nvme.c @@ -303,7 +303,7 @@ static __u32 wdc_dump_length(int fd, __u32 opcode, __u32 cdw10, __u32 cdw12, __u l = (struct wdc_log_size *) buf; memset(&admin_cmd, 0, sizeof (struct nvme_admin_cmd)); admin_cmd.opcode = opcode; - admin_cmd.addr = (__u64) buf; + admin_cmd.addr = (__u64)(uintptr_t)buf; admin_cmd.data_len = WDC_NVME_LOG_SIZE_DATA_LEN; admin_cmd.cdw10 = cdw10; admin_cmd.cdw12 = cdw12; @@ -339,7 +339,7 @@ static int wdc_do_dump(int fd, __u32 opcode,__u32 data_len, __u32 cdw10, memset(dump_data, 0, sizeof (__u8) * dump_length); memset(&admin_cmd, 0, sizeof (struct nvme_admin_cmd)); admin_cmd.opcode = opcode; - admin_cmd.addr = (__u64) dump_data; + admin_cmd.addr = (__u64)(uintptr_t)dump_data; admin_cmd.data_len = data_len; admin_cmd.cdw10 = cdw10; admin_cmd.cdw12 = cdw12; @@ -479,7 +479,7 @@ static int wdc_do_drive_log(int fd, char *file) memset(drive_log_data, 0, sizeof (__u8) * drive_log_length); memset(&admin_cmd, 0, sizeof (struct nvme_admin_cmd)); admin_cmd.opcode = WDC_NVME_DRIVE_LOG_OPCODE; - admin_cmd.addr = (__u64) drive_log_data; + admin_cmd.addr = (__u64)(uintptr_t)drive_log_data; admin_cmd.data_len = drive_log_length; admin_cmd.cdw10 = drive_log_length; admin_cmd.cdw12 = ((WDC_NVME_DRIVE_LOG_SUBCMD << @@ -662,7 +662,7 @@ static int wdc_purge_monitor(int argc, char **argv, memset(output, 0, sizeof (output)); memset(&admin_cmd, 0, sizeof (struct nvme_admin_cmd)); admin_cmd.opcode = WDC_NVME_PURGE_MONITOR_OPCODE; - admin_cmd.addr = (__u64) output; + admin_cmd.addr = (__u64)(uintptr_t)output; admin_cmd.data_len = WDC_NVME_PURGE_MONITOR_DATA_LEN; admin_cmd.cdw10 = WDC_NVME_PURGE_MONITOR_CMD_CDW10; admin_cmd.timeout_ms = WDC_NVME_PURGE_MONITOR_TIMEOUT;