]> www.infradead.org Git - users/sagi/nvme-cli.git/commitdiff
plugins/wdc: don't write invalid log data
authorJeremy Kerr <jk@codeconstruct.com.au>
Tue, 12 Jul 2022 07:30:43 +0000 (15:30 +0800)
committerJeremy Kerr <jk@codeconstruct.com.au>
Tue, 12 Jul 2022 07:39:52 +0000 (15:39 +0800)
In wdc_do_cap_telemetry_log, we currently continue to write log data if
any of the telemetry queries return with < 0.

This change aborts the output write on these errors instead.

Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
plugins/wdc/wdc-nvme.c

index 653d89f44355c5146b2087d3064bc3764e4b059d..14ea4ba76acc7680c0e71082a2aeafb03287cc6b 100644 (file)
@@ -2454,9 +2454,10 @@ static int wdc_do_cap_telemetry_log(int fd, char *file, __u32 bs, int type, int
        else
                err = nvme_get_host_telemetry(fd, &log, data_area, &full_size);
 
-       if (err < 0)
+       if (err < 0) {
                perror("get-telemetry-log");
-       else if (err > 0) {
+               goto close_output;
+       } else if (err > 0) {
                nvme_show_status(err);
                fprintf(stderr, "%s: Failed to acquire telemetry header!\n", __func__);
                goto close_output;