diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2021-02-07 14:04:58 +0100 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2021-02-08 23:43:38 +0100 |
commit | be9b731f440243df8fb42f6f2a506bf27de5ac64 (patch) | |
tree | d02ed2e485baeaefdcc57e7eca253b4022b9ada6 | |
parent | 9b173bb931426cd1d35beb5ec5151289112b2568 (diff) | |
download | lvm2-be9b731f440243df8fb42f6f2a506bf27de5ac64.tar.gz |
dev-cache: check for nvme name while adding alias
Instead of repeated list retest, compare name once during add of alias.
-rw-r--r-- | lib/device/dev-cache.c | 5 | ||||
-rw-r--r-- | lib/device/dev-type.c | 14 |
2 files changed, 6 insertions, 13 deletions
diff --git a/lib/device/dev-cache.c b/lib/device/dev-cache.c index 8082efac4..a93600965 100644 --- a/lib/device/dev-cache.c +++ b/lib/device/dev-cache.c @@ -337,6 +337,11 @@ static int _add_alias(struct device *dev, const char *path) return 1; } + if (!strncmp(path, "/dev/nvme", 9)) { + log_debug("Found nvme device %s", dev_name(dev)); + dev->flags |= DEV_IS_NVME; + } + sl->str = path; if (!dm_list_empty(&dev->aliases)) { diff --git a/lib/device/dev-type.c b/lib/device/dev-type.c index 379afa89c..8eacbf096 100644 --- a/lib/device/dev-type.c +++ b/lib/device/dev-type.c @@ -78,19 +78,7 @@ int dev_is_pmem(struct device *dev) int dev_is_nvme(struct dev_types *dt, struct device *dev) { - struct dm_str_list *strl; - - if (dev->flags & DEV_IS_NVME) - return 1; - - dm_list_iterate_items(strl, &dev->aliases) { - if (!strncmp(strl->str, "/dev/nvme", 9)) { - log_debug("Found nvme device %s", dev_name(dev)); - dev->flags |= DEV_IS_NVME; - return 1; - } - } - return 0; + return (dev->flags & DEV_IS_NVME) ? 1 : 0; } int dev_is_lv(struct device *dev) |