Skip to content

Commit e62ab3c

Browse files
committed
Revert "nvme: use blkdev for direct if namespace-id specified"
This reverts commit 565b30e. Causes regression in nightly CI runs. The problem couldn't be figured out thus revert it. Signed-off-by: Daniel Wagner <[email protected]>
1 parent 696f985 commit e62ab3c

1 file changed

Lines changed: 9 additions & 52 deletions

File tree

nvme.c

Lines changed: 9 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -300,48 +300,7 @@ static bool is_blkdev(struct nvme_dev *dev)
300300
return S_ISBLK(dev->direct.stat.st_mode);
301301
}
302302

303-
static bool is_nvme_dev(char *dev)
304-
{
305-
int instance;
306-
int head_instance;
307-
308-
return sscanf(basename(dev), "nvme%dn%d", &instance, &head_instance) == 1;
309-
}
310-
311-
static __u32 get_nsid(struct argconfig_commandline_options *opts)
312-
{
313-
__u32 *nsid = argconfig_get_value(opts, "namespace-id");
314-
315-
if (nsid && *nsid != NVME_NSID_ALL)
316-
return *nsid;
317-
318-
return NVME_NSID_NONE;
319-
}
320-
321-
static int open_blkdev_direct(char *dev, int flags, __u32 nsid)
322-
{
323-
_cleanup_free_ char *blkdev = NULL;
324-
int fd = -1;
325-
326-
if (is_nvme_dev(dev) && nsid) {
327-
if (asprintf(&blkdev, "%sn%d", dev, nsid) < 0)
328-
blkdev = NULL;
329-
}
330-
331-
if (blkdev) {
332-
fd = open(blkdev, flags);
333-
print_debug("blkdev: %s, fd: %d\n", blkdev, fd);
334-
}
335-
336-
if (fd < 0) {
337-
fd = open(dev, flags);
338-
print_debug("dev: %s, fd: %d\n", dev, fd);
339-
}
340-
341-
return fd;
342-
}
343-
344-
static int open_dev_direct(struct nvme_dev **devp, char *devstr, int flags, __u32 nsid)
303+
static int open_dev_direct(struct nvme_dev **devp, char *devstr, int flags)
345304
{
346305
struct nvme_dev *dev;
347306
int err;
@@ -352,7 +311,7 @@ static int open_dev_direct(struct nvme_dev **devp, char *devstr, int flags, __u3
352311

353312
dev->type = NVME_DEV_DIRECT;
354313
dev->name = basename(devstr);
355-
err = open_blkdev_direct(devstr, flags, nsid);
314+
err = open(devstr, flags);
356315
if (err < 0) {
357316
nvme_show_perror(devstr);
358317
goto err_free;
@@ -454,12 +413,10 @@ static int check_arg_dev(int argc, char **argv)
454413
return 0;
455414
}
456415

457-
static int get_dev(struct nvme_dev **dev, int argc, char **argv, int flags,
458-
struct argconfig_commandline_options *opts)
416+
static int get_dev(struct nvme_dev **dev, int argc, char **argv, int flags)
459417
{
460418
char *devname;
461419
int ret;
462-
__u32 nsid = get_nsid(opts);
463420

464421
ret = check_arg_dev(argc, argv);
465422
if (ret)
@@ -471,7 +428,7 @@ static int get_dev(struct nvme_dev **dev, int argc, char **argv, int flags,
471428
if (!strncmp(devname, "mctp:", strlen("mctp:")))
472429
ret = open_dev_mi_mctp(dev, devname);
473430
else
474-
ret = open_dev_direct(dev, devname, flags, nsid);
431+
ret = open_dev_direct(dev, devname, flags);
475432

476433
return ret ? -errno : 0;
477434
}
@@ -501,22 +458,22 @@ int parse_and_open(struct nvme_dev **dev, int argc, char **argv,
501458
if (ret)
502459
return ret;
503460

504-
ret = get_dev(dev, argc, argv, O_RDONLY, opts);
461+
ret = get_dev(dev, argc, argv, O_RDONLY);
505462
if (ret < 0)
506463
argconfig_print_help(desc, opts);
507464

508465
return ret;
509466
}
510467

511468
int open_exclusive(struct nvme_dev **dev, int argc, char **argv,
512-
int ignore_exclusive, struct argconfig_commandline_options *opts)
469+
int ignore_exclusive)
513470
{
514471
int flags = O_RDONLY;
515472

516473
if (!ignore_exclusive)
517474
flags |= O_EXCL;
518475

519-
return get_dev(dev, argc, argv, flags, opts);
476+
return get_dev(dev, argc, argv, flags);
520477
}
521478

522479
int validate_output_format(const char *format, nvme_print_flags_t *flags)
@@ -6275,7 +6232,7 @@ static int format_cmd(int argc, char **argv, struct command *cmd, struct plugin
62756232
if (err)
62766233
return err;
62776234

6278-
err = open_exclusive(&dev, argc, argv, cfg.force, opts);
6235+
err = open_exclusive(&dev, argc, argv, cfg.force);
62796236
if (err) {
62806237
if (errno == EBUSY) {
62816238
fprintf(stderr, "Failed to open %s.\n", basename(argv[optind]));
@@ -7970,7 +7927,7 @@ static int submit_io(int opcode, char *command, const char *desc, int argc, char
79707927
err = parse_args(argc, argv, desc, opts);
79717928
if (err)
79727929
return err;
7973-
err = open_exclusive(&dev, argc, argv, cfg.force, opts);
7930+
err = open_exclusive(&dev, argc, argv, cfg.force);
79747931
if (err) {
79757932
if (errno == EBUSY) {
79767933
fprintf(stderr, "Failed to open %s.\n", basename(argv[optind]));

0 commit comments

Comments
 (0)