[lvm-devel] main - lv_check_not_in_use: correct check
Zdenek Kabelac
zkabelac at sourceware.org
Wed Mar 10 23:19:27 UTC 2021
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=127c2fc6e287f0f7edb9c0a061aaaba31bf47e45
Commit: 127c2fc6e287f0f7edb9c0a061aaaba31bf47e45
Parent: d4293b579df61b5eb96dfcce5a7ec8f2116e9561
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Wed Mar 10 14:05:03 2021 +0100
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Wed Mar 10 23:32:12 2021 +0100
lv_check_not_in_use: correct check
Since lv_info() may return 0 without setting info struct,
make the test correct and even more readable.
---
lib/activate/activate.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/activate/activate.c b/lib/activate/activate.c
index c450eab14..4452d4d40 100644
--- a/lib/activate/activate.c
+++ b/lib/activate/activate.c
@@ -834,8 +834,10 @@ int lv_check_not_in_use(const struct logical_volume *lv, int error_if_used)
struct lvinfo info;
unsigned int open_count_check_retries;
- if (!lv_info(lv->vg->cmd, lv, 0, &info, 1, 0) || !info.exists || !info.open_count)
- return !info.exists ? 2 : 1;
+ if (!lv_info(lv->vg->cmd, lv, 0, &info, 1, 0) || !info.exists)
+ return 2;
+ else if (!info.open_count)
+ return 1;
/* If sysfs is not used, use open_count information only. */
if (dm_sysfs_dir()) {
More information about the lvm-devel
mailing list