summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2021-02-07 14:04:58 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2021-02-08 23:43:38 +0100
commitbe9b731f440243df8fb42f6f2a506bf27de5ac64 (patch)
treed02ed2e485baeaefdcc57e7eca253b4022b9ada6
parent9b173bb931426cd1d35beb5ec5151289112b2568 (diff)
downloadlvm2-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.c5
-rw-r--r--lib/device/dev-type.c14
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)