]> www.infradead.org Git - users/sagi/nvme-cli.git/commitdiff
nvme: Use libnvme helper to retrieve logical block size
authorDaniel Wagner <dwagner@suse.de>
Mon, 20 Dec 2021 15:34:35 +0000 (16:34 +0100)
committerDaniel Wagner <dwagner@suse.de>
Fri, 7 Jan 2022 16:38:18 +0000 (17:38 +0100)
Use the libnvme helper nvme_get_logical_block_size to figure out the
logical block size. This way we have support for normal char
devices (nvme%d) and for generic devices (ng%d%d).

Signed-off-by: Daniel Wagner <dwagner@suse.de>
nvme.c

diff --git a/nvme.c b/nvme.c
index b10c087965adcae41fa0b5af00f564323e5830a9..5b0bbae4e2e47dddb76bd7aaddc1f6d71bd97fce 100644 (file)
--- a/nvme.c
+++ b/nvme.c
@@ -5665,8 +5665,9 @@ static int submit_io(int opcode, char *command, const char *desc,
                goto close_mfd;
        }
 
-       if (ioctl(fd, BLKSSZGET, &logical_block_size) < 0)
-               goto close_mfd;
+       if (nvme_get_logical_block_size(fd, cfg.namespace_id,
+                                       &logical_block_size) < 0)
+                       goto close_mfd;
 
        buffer_size = (cfg.block_count + 1) * logical_block_size;
        if (cfg.data_size < buffer_size) {