From: Akinobu Mita Date: Sun, 5 May 2019 17:55:27 +0000 (-0700) Subject: nvme-cli: add missing endianness conversions for telemetry log page X-Git-Tag: v1.9~74 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=17da35105ba04c1cc22198aba74f23b8a6fac33d;p=users%2Fsagi%2Fnvme-cli.git nvme-cli: add missing endianness conversions for telemetry log page Add missing endianness conversions for data area last block fields of telemetry log page. Cc: Keith Busch Cc: Jens Axboe Cc: Christoph Hellwig Cc: Sagi Grimberg Signed-off-by: Akinobu Mita --- diff --git a/linux/nvme.h b/linux/nvme.h index a1422a77..f6d73413 100644 --- a/linux/nvme.h +++ b/linux/nvme.h @@ -433,9 +433,9 @@ struct nvme_telemetry_log_page_hdr { __u8 lpi; /* Log page identifier */ __u8 rsvd[4]; __u8 iee_oui[3]; - __u16 dalb1; /* Data area 1 last block */ - __u16 dalb2; /* Data area 2 last block */ - __u16 dalb3; /* Data area 3 last block */ + __le16 dalb1; /* Data area 1 last block */ + __le16 dalb2; /* Data area 2 last block */ + __le16 dalb3; /* Data area 3 last block */ __u8 rsvd1[368]; /* TODO verify */ __u8 ctrlavail; /* Controller initiated data avail?*/ __u8 ctrldgn; /* Controller initiated telemetry Data Gen # */ diff --git a/nvme.c b/nvme.c index f4c027bc..220fb18b 100644 --- a/nvme.c +++ b/nvme.c @@ -376,13 +376,13 @@ static int get_telemetry_log(int argc, char **argv, struct command *cmd, struct switch (cfg.data_area) { case 1: - full_size = (hdr->dalb1 * bs) + offset; + full_size = (le16_to_cpu(hdr->dalb1) * bs) + offset; break; case 2: - full_size = (hdr->dalb2 * bs) + offset; + full_size = (le16_to_cpu(hdr->dalb2) * bs) + offset; break; case 3: - full_size = (hdr->dalb3 * bs) + offset; + full_size = (le16_to_cpu(hdr->dalb3) * bs) + offset; break; default: fprintf(stderr, "Invalid data area requested");