main - cov: unused value
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=74936f53f7123c092d2...
Commit: 74936f53f7123c092d2ba6b9b7883db47bf0c61c
Parent: d95c0e977cb69b04467d650a8be9b0efa2c71688
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 15:51:11 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:29:44 2021 +0100
cov: unused value
---
daemons/lvmlockd/lvmlockd-core.c | 2 +-
tools/vgimportdevices.c | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/daemons/lvmlockd/lvmlockd-core.c b/daemons/lvmlockd/lvmlockd-core.c
index b271a9aee..094491029 100644
--- a/daemons/lvmlockd/lvmlockd-core.c
+++ b/daemons/lvmlockd/lvmlockd-core.c
@@ -2682,7 +2682,7 @@ out_rem:
log_debug("S %s clearing locks", ls->name);
- rv = clear_locks(ls, free_vg, drop_vg);
+ (void) clear_locks(ls, free_vg, drop_vg);
/*
* Tell any other hosts in the lockspace to leave it
diff --git a/tools/vgimportdevices.c b/tools/vgimportdevices.c
index 88435af92..af0e618aa 100644
--- a/tools/vgimportdevices.c
+++ b/tools/vgimportdevices.c
@@ -113,7 +113,7 @@ int vgimportdevices(struct cmd_context *cmd, int argc, char **argv)
{
struct vgimportdevices_params vp = { 0 };
struct processing_handle *handle;
- int ret = ECMD_PROCESSED;
+ int ret = ECMD_FAILED;
if (arg_is_set(cmd, foreign_ARG))
cmd->include_foreign_vgs = 1;
@@ -152,7 +152,6 @@ int vgimportdevices(struct cmd_context *cmd, int argc, char **argv)
if (!(handle = init_processing_handle(cmd, NULL))) {
log_error("Failed to initialize processing handle.");
- ret = ECMD_FAILED;
goto out;
}
handle->custom_handle = &vp;
3 years, 2 months
main - cov: remove unnecessary headers
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=d95c0e977cb69b04467...
Commit: d95c0e977cb69b04467d650a8be9b0efa2c71688
Parent: a6075fe2f259c4b2abd946cf06f9b507f9a7a49e
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 15:04:22 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:29:44 2021 +0100
cov: remove unnecessary headers
---
lib/device/device_id.c | 1 -
tools/command.c | 1 -
tools/lvmdevices.c | 1 -
tools/vgimportclone.c | 1 -
tools/vgimportdevices.c | 1 -
5 files changed, 5 deletions(-)
diff --git a/lib/device/device_id.c b/lib/device/device_id.c
index 74edae05c..1c4ba78f6 100644
--- a/lib/device/device_id.c
+++ b/lib/device/device_id.c
@@ -18,7 +18,6 @@
#include "lib/device/device.h"
#include "lib/device/device_id.h"
#include "lib/device/dev-type.h"
-#include "lib/device/device-types.h"
#include "lib/label/label.h"
#include "lib/metadata/metadata.h"
#include "lib/format_text/layout.h"
diff --git a/tools/command.c b/tools/command.c
index 282c9fa43..81720acf1 100644
--- a/tools/command.c
+++ b/tools/command.c
@@ -21,7 +21,6 @@
#include <sys/wait.h>
#include <fcntl.h>
#include <stdio.h>
-#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include <stddef.h>
diff --git a/tools/lvmdevices.c b/tools/lvmdevices.c
index 42fa189c3..b67db7464 100644
--- a/tools/lvmdevices.c
+++ b/tools/lvmdevices.c
@@ -14,7 +14,6 @@
#include "tools.h"
#include "lib/cache/lvmcache.h"
-#include "lib/filters/filter.h"
#include "lib/device/device_id.h"
static void _search_devs_for_pvids(struct cmd_context *cmd, struct dm_list *search_pvids, struct dm_list *found_devs)
diff --git a/tools/vgimportclone.c b/tools/vgimportclone.c
index 18f10f49a..1e6bb2d69 100644
--- a/tools/vgimportclone.c
+++ b/tools/vgimportclone.c
@@ -14,7 +14,6 @@
#include "tools.h"
#include "lib/cache/lvmcache.h"
-#include "lib/filters/filter.h"
#include "lib/device/device_id.h"
struct vgimportclone_params {
diff --git a/tools/vgimportdevices.c b/tools/vgimportdevices.c
index b7b363369..88435af92 100644
--- a/tools/vgimportdevices.c
+++ b/tools/vgimportdevices.c
@@ -14,7 +14,6 @@
#include "tools.h"
#include "lib/cache/lvmcache.h"
-#include "lib/filters/filter.h"
#include "lib/device/device_id.h"
struct vgimportdevices_params {
3 years, 2 months
main - cov: memleak on error path
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=a6075fe2f259c4b2abd...
Commit: a6075fe2f259c4b2abd946cf06f9b507f9a7a49e
Parent: 241c63f7a72cecad085c8983b8a294d8d9985119
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 15:38:54 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:29:44 2021 +0100
cov: memleak on error path
---
lib/device/dev-cache.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/device/dev-cache.c b/lib/device/dev-cache.c
index 6cf798858..05b2b9bff 100644
--- a/lib/device/dev-cache.c
+++ b/lib/device/dev-cache.c
@@ -1713,8 +1713,10 @@ static int _setup_devices_list(struct cmd_context *cmd)
if (!(du = zalloc(sizeof(struct dev_use))))
return_0;
- if (!(du->devname = strdup(strl->str)))
+ if (!(du->devname = strdup(strl->str))) {
+ free(du);
return_0;
+ }
dm_list_add(&cmd->use_devices, &du->list);
}
3 years, 2 months
main - cov: fix iter memleak in vgimportclose
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=241c63f7a72cecad085...
Commit: 241c63f7a72cecad085c8983b8a294d8d9985119
Parent: 131ca0eb9582dd183ed40400caf4fc832f43cb16
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Wed Mar 10 01:25:37 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:29:06 2021 +0100
cov: fix iter memleak in vgimportclose
Add missing release of iterator on error path.
---
tools/vgimportclone.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/tools/vgimportclone.c b/tools/vgimportclone.c
index 58cae5fac..18f10f49a 100644
--- a/tools/vgimportclone.c
+++ b/tools/vgimportclone.c
@@ -190,6 +190,7 @@ static int _get_other_devs(struct cmd_context *cmd, struct dm_list *new_devs, st
struct dev_iter *iter;
struct device *dev;
struct device_list *devl;
+ int r = 1;
if (!(iter = dev_iter_create(cmd->filter, 0)))
return_0;
@@ -197,14 +198,16 @@ static int _get_other_devs(struct cmd_context *cmd, struct dm_list *new_devs, st
while ((dev = dev_iter_get(cmd, iter))) {
if (_get_device_list(new_devs, dev))
continue;
- if (!(devl = malloc(sizeof(*devl))))
- return_0;
+ if (!(devl = malloc(sizeof(*devl)))) {
+ r = 0;
+ goto_bad;
+ }
devl->dev = dev;
dm_list_add(other_devs, &devl->list);
}
-
+bad:
dev_iter_destroy(iter);
- return 1;
+ return r;
}
int vgimportclone(struct cmd_context *cmd, int argc, char **argv)
3 years, 2 months
main - activation: use existing LV as best effort
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=131ca0eb9582dd183ed...
Commit: 131ca0eb9582dd183ed40400caf4fc832f43cb16
Parent: 15c588f931d3b30344352a49d7f8df6dc5ea873c
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 18:23:42 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:29:06 2021 +0100
activation: use existing LV as best effort
Returning NULL for lv_committed is basically instant crash,
so instead try with passed LV instead.
It shouldn't matter as this is internall error path anyway,
but coverity should be happier.
---
lib/metadata/metadata.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c
index f82ada8be..71e59207d 100644
--- a/lib/metadata/metadata.c
+++ b/lib/metadata/metadata.c
@@ -4335,7 +4335,7 @@ char *tags_format_and_copy(struct dm_pool *mem, const struct dm_list *tagsl)
const struct logical_volume *lv_committed(const struct logical_volume *lv)
{
struct volume_group *vg;
- struct logical_volume *found_lv;
+ const struct logical_volume *found_lv;
if (!lv)
return NULL;
@@ -4348,7 +4348,7 @@ const struct logical_volume *lv_committed(const struct logical_volume *lv)
if (!(found_lv = find_lv_in_vg_by_lvid(vg, &lv->lvid))) {
log_error(INTERNAL_ERROR "LV %s (UUID %s) not found in committed metadata.",
display_lvname(lv), lv->lvid.s);
- return NULL;
+ found_lv = lv; /* Use uncommitted LV as best effort */
}
return found_lv;
3 years, 2 months
main - gcc: match size of holder name to direcnt d_name
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=15c588f931d3b303443...
Commit: 15c588f931d3b30344352a49d7f8df6dc5ea873c
Parent: 75037bee5d92023718a1b9f0725152b4512e4349
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 13:58:50 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:28:08 2021 +0100
gcc: match size of holder name to direcnt d_name
As d_name is defined as 256 avoid gcc warning - although
in our case the used size will be much smaller.
---
lib/filters/filter-mpath.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/filters/filter-mpath.c b/lib/filters/filter-mpath.c
index 57ed79908..471f0b4b9 100644
--- a/lib/filters/filter-mpath.c
+++ b/lib/filters/filter-mpath.c
@@ -198,7 +198,7 @@ static int _native_dev_is_mpath_component(struct cmd_context *cmd, struct dev_fi
char link_path[PATH_MAX]; /* some obscure, unpredictable sysfs path */
char holders_path[PATH_MAX]; /* e.g. "/sys/block/sda/holders/" */
char dm_dev_path[PATH_MAX]; /* e.g. "/dev/dm-1" */
- char holder_name[128] = { 0 }; /* e.g. "dm-1" */
+ char holder_name[256]; /* e.g. "dm-1" */
const char *sysfs_dir = dm_sysfs_dir();
int dev_major = MAJOR(dev->dev);
int dev_minor = MINOR(dev->dev);
3 years, 2 months
main - debug: more tracing
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=75037bee5d92023718a...
Commit: 75037bee5d92023718a1b9f0725152b4512e4349
Parent: d01c17ff229beb1cfe9d6331fbd35637866412ec
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Wed Mar 10 01:26:30 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:27:13 2021 +0100
debug: more tracing
Check result of device_ids_write() and at least provide stack;
---
lib/device/device_id.c | 10 ++++++----
lib/label/label.c | 6 ++++--
tools/toollib.c | 3 ++-
3 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/lib/device/device_id.c b/lib/device/device_id.c
index 4b7214b60..74edae05c 100644
--- a/lib/device/device_id.c
+++ b/lib/device/device_id.c
@@ -689,7 +689,8 @@ int device_ids_write(struct cmd_context *cmd)
}
if ((dir_fd = open(dirpath, O_RDONLY)) < 0) {
- fclose(fp);
+ if (fclose(fp))
+ log_sys_debug("fclose", tmpfile);
ret = 0;
goto out;
}
@@ -782,9 +783,10 @@ static void _device_ids_update_try(struct cmd_context *cmd)
if (!lock_devices_file_try(cmd, LOCK_EX, &held)) {
log_debug("Skip devices file update (busy).");
} else {
- if (device_ids_version_unchanged(cmd))
- device_ids_write(cmd);
- else
+ if (device_ids_version_unchanged(cmd)) {
+ if (!device_ids_write(cmd))
+ stack;
+ } else
log_debug("Skip devices file update (changed).");
}
if (!held)
diff --git a/lib/label/label.c b/lib/label/label.c
index 8cbed7dd8..f305ac735 100644
--- a/lib/label/label.c
+++ b/lib/label/label.c
@@ -582,7 +582,8 @@ retry_open:
if (di == -1) {
log_error("Failed to set bcache fd.");
- close(fd);
+ if (close(fd))
+ log_sys_debug("close", name);
dev->bcache_fd = -1;
return 0;
}
@@ -1592,7 +1593,8 @@ int label_scan_reopen_rw(struct device *dev)
if (!bcache_change_fd(dev->bcache_di, fd)) {
log_error("Failed to change to rw fd %s di %d fd %d.",
dev_name(dev), dev->bcache_di, fd);
- close(fd);
+ if (close(fd))
+ log_sys_debug("close", dev_name(dev));
return 0;
}
diff --git a/tools/toollib.c b/tools/toollib.c
index c8540b005..b9be54ebb 100644
--- a/tools/toollib.c
+++ b/tools/toollib.c
@@ -5770,7 +5770,8 @@ do_command:
}
/* TODO: when vgcreate uses only existing PVs this doesn't change and can be skipped */
- device_ids_write(cmd);
+ if (!device_ids_write(cmd))
+ stack;
/*
* Don't keep devs open excl in bcache because the excl will prevent
3 years, 2 months
main - debug: more use of display_lvname
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=d01c17ff229beb1cfe9...
Commit: d01c17ff229beb1cfe9d6331fbd35637866412ec
Parent: 7342ab06fcce5f386e1fd58fa9e82352d570398e
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 13:13:42 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:11:52 2021 +0100
debug: more use of display_lvname
---
lib/metadata/pool_manip.c | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/lib/metadata/pool_manip.c b/lib/metadata/pool_manip.c
index 1975cb418..9ceec3a7e 100644
--- a/lib/metadata/pool_manip.c
+++ b/lib/metadata/pool_manip.c
@@ -177,7 +177,7 @@ static struct glv_list *_init_historical_glvl(struct dm_pool *mem, struct lv_seg
return glvl;
bad:
log_error("Initialization of historical LV representation for removed logical "
- "volume %s/%s failed.", seg->lv->vg->name, seg->lv->name);
+ "volume %s failed.", display_lvname(seg->lv));
if (glvl)
dm_pool_free(mem, glvl);
return NULL;
@@ -214,7 +214,7 @@ static struct generic_logical_volume *_create_historical_glv(struct lv_segment *
return historical_glvl->glv;
bad:
log_error("Failed to create historical LV representation for removed logical "
- "volume %s/%s.", seg_to_remove->lv->vg->name, seg_to_remove->lv->name);
+ "volume %s.", display_lvname(seg_to_remove->lv));
if (origin_glv_created)
seg_to_remove->origin->this_glv = NULL;
if (historical_glvl)
@@ -257,7 +257,7 @@ int detach_pool_lv(struct lv_segment *seg)
if (!seg->pool_lv) {
log_error(INTERNAL_ERROR
"No pool associated with %s LV, %s.",
- lvseg_name(seg), seg->lv->name);
+ lvseg_name(seg), display_lvname(seg->lv));
return 0;
}
@@ -273,9 +273,8 @@ int detach_pool_lv(struct lv_segment *seg)
}
if (!lv_is_thin_pool(seg->pool_lv)) {
- log_error(INTERNAL_ERROR
- "Cannot detach pool from LV %s.",
- seg->lv->name);
+ log_error(INTERNAL_ERROR "Cannot detach pool from LV %s.",
+ display_lvname(seg->lv));
return 0;
}
@@ -286,7 +285,7 @@ int detach_pool_lv(struct lv_segment *seg)
case DM_THIN_MESSAGE_CREATE_THIN:
if (tmsg->u.lv == seg->lv) {
log_debug_metadata("Discarding message for LV %s.",
- tmsg->u.lv->name);
+ display_lvname(tmsg->u.lv));
dm_list_del(&tmsg->list);
no_update = 1; /* Replacing existing */
}
@@ -397,7 +396,7 @@ struct lv_segment *find_pool_seg(const struct lv_segment *seg)
if ((lv_is_thin_type(seg->lv) && !seg_is_pool(pool_seg))) {
log_error("%s on %s is not a %s pool segment",
- pool_seg->lv->name, seg->lv->name,
+ display_lvname(pool_seg->lv), display_lvname(seg->lv),
lv_is_thin_type(seg->lv) ? "thin" : "cache");
return NULL;
}
@@ -494,7 +493,7 @@ int create_pool(struct logical_volume *pool_lv,
if (pool_lv->le_count) {
log_error(INTERNAL_ERROR "Pool %s already has extents.",
- pool_lv->name);
+ display_lvname(pool_lv));
return 0;
}
@@ -523,7 +522,7 @@ int create_pool(struct logical_volume *pool_lv,
if (!activation())
log_warn("WARNING: Pool %s is created without initialization.",
- pool_lv->name);
+ display_lvname(pool_lv));
else if (!test_mode()) {
if (!vg_write(pool_lv->vg) || !vg_commit(pool_lv->vg))
return_0;
3 years, 2 months
main - debug: change sys_error to sys_debug
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=7342ab06fcce5f386e1...
Commit: 7342ab06fcce5f386e1fd58fa9e82352d570398e
Parent: 5f7a7af7f201fea454bc4200bc76c4c75ef95463
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 11:08:47 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:11:52 2021 +0100
debug: change sys_error to sys_debug
These messages do not cause command error - so changing logging level
to just 'sys_debug' (so visible only with -vvvv)
---
device_mapper/ioctl/libdm-iface.c | 2 +-
device_mapper/libdm-common.c | 2 +-
device_mapper/libdm-file.c | 2 +-
lib/activate/fs.c | 10 +++++-----
lib/device/dev-cache.c | 2 +-
lib/filters/filter-mpath.c | 2 +-
lib/filters/filter-sysfs.c | 10 +++++-----
libdm/dm-tools/dmfilemapd.c | 8 ++++----
libdm/ioctl/libdm-iface.c | 2 +-
libdm/libdm-common.c | 2 +-
libdm/libdm-file.c | 2 +-
tools/lvmcmdline.c | 2 +-
12 files changed, 23 insertions(+), 23 deletions(-)
diff --git a/device_mapper/ioctl/libdm-iface.c b/device_mapper/ioctl/libdm-iface.c
index 6b3818e3a..536e4b238 100644
--- a/device_mapper/ioctl/libdm-iface.c
+++ b/device_mapper/ioctl/libdm-iface.c
@@ -1352,7 +1352,7 @@ static int _process_mapper_dir(struct dm_task *dmt)
}
if (closedir(d))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return r;
}
diff --git a/device_mapper/libdm-common.c b/device_mapper/libdm-common.c
index 9b87e4e74..a2304b603 100644
--- a/device_mapper/libdm-common.c
+++ b/device_mapper/libdm-common.c
@@ -382,7 +382,7 @@ static int _find_dm_name_of_device(dev_t st_rdev, char *buf, size_t buf_len)
}
if (closedir(d))
- log_sys_error("closedir", _dm_dir);
+ log_sys_debug("closedir", _dm_dir);
return r;
}
diff --git a/device_mapper/libdm-file.c b/device_mapper/libdm-file.c
index 94ca146f1..74d9968df 100644
--- a/device_mapper/libdm-file.c
+++ b/device_mapper/libdm-file.c
@@ -119,7 +119,7 @@ int dm_is_empty_dir(const char *dir)
break;
if (closedir(d))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return dirent ? 0 : 1;
}
diff --git a/lib/activate/fs.c b/lib/activate/fs.c
index 2e8098ddf..60ced8fb5 100644
--- a/lib/activate/fs.c
+++ b/lib/activate/fs.c
@@ -93,7 +93,7 @@ static void _rm_blks(const char *dir)
DIR *d;
if (!(d = opendir(dir))) {
- log_sys_error("opendir", dir);
+ log_sys_debug("opendir", dir);
return;
}
@@ -104,7 +104,7 @@ static void _rm_blks(const char *dir)
continue;
if (dm_snprintf(path, sizeof(path), "%s/%s", dir, name) == -1) {
- log_error("Couldn't create path for %s", name);
+ log_debug("Couldn't create path for %s.", name);
continue;
}
@@ -113,12 +113,12 @@ static void _rm_blks(const char *dir)
continue;
log_very_verbose("Removing %s", path);
if (unlink(path) < 0)
- log_sys_error("unlink", path);
+ log_sys_debug("unlink", path);
}
}
if (closedir(d))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
}
static int _mk_link(const char *dev_dir, const char *vg_name,
@@ -169,7 +169,7 @@ static int _mk_link(const char *dev_dir, const char *vg_name,
log_very_verbose("Removing %s", lvm1_group_path);
if (unlink(lvm1_group_path) < 0)
- log_sys_error("unlink", lvm1_group_path);
+ log_sys_debug("unlink", lvm1_group_path);
}
}
diff --git a/lib/device/dev-cache.c b/lib/device/dev-cache.c
index cf6334564..6cf798858 100644
--- a/lib/device/dev-cache.c
+++ b/lib/device/dev-cache.c
@@ -666,7 +666,7 @@ static int _index_dev_by_vgid_and_lvid(struct device *dev)
r = 1;
out:
if (closedir(d))
- log_sys_error("closedir", path);
+ log_sys_debug("closedir", path);
return r;
}
diff --git a/lib/filters/filter-mpath.c b/lib/filters/filter-mpath.c
index 202296458..57ed79908 100644
--- a/lib/filters/filter-mpath.c
+++ b/lib/filters/filter-mpath.c
@@ -158,7 +158,7 @@ static int _get_holder_name(const char *dir, char *name, int max_size)
}
if (closedir(dr))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return r;
}
diff --git a/lib/filters/filter-sysfs.c b/lib/filters/filter-sysfs.c
index b2ac63d7b..b626144b2 100644
--- a/lib/filters/filter-sysfs.c
+++ b/lib/filters/filter-sysfs.c
@@ -218,15 +218,15 @@ static int _read_devs(struct dev_set *ds, const char *dir, unsigned sysfs_depth)
if (dm_snprintf(path, sizeof(path), "%s/%s", dir,
d->d_name) < 0) {
- log_error("sysfs path name too long: %s in %s",
- d->d_name, dir);
+ log_warn("WARGNING: sysfs path name too long: %s in %s.",
+ d->d_name, dir);
continue;
}
/* devices have a "dev" file */
if (dm_snprintf(file, sizeof(file), "%s/dev", path) < 0) {
- log_error("sysfs path name too long: %s in %s",
- d->d_name, dir);
+ log_warn("WARGNING: sysfs path name too long: %s in %s.",
+ d->d_name, dir);
continue;
}
@@ -242,7 +242,7 @@ static int _read_devs(struct dev_set *ds, const char *dir, unsigned sysfs_depth)
}
if (closedir(dr))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return r;
}
diff --git a/libdm/dm-tools/dmfilemapd.c b/libdm/dm-tools/dmfilemapd.c
index 856df3df2..e15f0015f 100644
--- a/libdm/dm-tools/dmfilemapd.c
+++ b/libdm/dm-tools/dmfilemapd.c
@@ -180,14 +180,14 @@ static int _is_open_in_pid(pid_t pid, const char *path)
link_buf[len] = '\0';
if (!strcmp(deleted_path, link_buf)) {
if (closedir(pid_d))
- log_sys_error("closedir", path_buf);
+ log_sys_debug("closedir", path_buf);
return 1;
}
}
bad:
if (closedir(pid_d))
- log_sys_error("closedir", path_buf);
+ log_sys_debug("closedir", path_buf);
return 0;
}
@@ -230,13 +230,13 @@ static int _is_open(const char *path)
continue;
if (_is_open_in_pid(pid, path)) {
if (closedir(proc_d))
- log_sys_error("closedir", DEFAULT_PROC_DIR);
+ log_sys_debug("closedir", DEFAULT_PROC_DIR);
return 1;
}
}
if (closedir(proc_d))
- log_sys_error("closedir", DEFAULT_PROC_DIR);
+ log_sys_debug("closedir", DEFAULT_PROC_DIR);
return 0;
}
diff --git a/libdm/ioctl/libdm-iface.c b/libdm/ioctl/libdm-iface.c
index f4be478da..f35ddeb07 100644
--- a/libdm/ioctl/libdm-iface.c
+++ b/libdm/ioctl/libdm-iface.c
@@ -1346,7 +1346,7 @@ static int _process_mapper_dir(struct dm_task *dmt)
}
if (closedir(d))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return r;
}
diff --git a/libdm/libdm-common.c b/libdm/libdm-common.c
index a28829765..f2ea64905 100644
--- a/libdm/libdm-common.c
+++ b/libdm/libdm-common.c
@@ -380,7 +380,7 @@ static int _find_dm_name_of_device(dev_t st_rdev, char *buf, size_t buf_len)
}
if (closedir(d))
- log_sys_error("closedir", _dm_dir);
+ log_sys_debug("closedir", _dm_dir);
return r;
}
diff --git a/libdm/libdm-file.c b/libdm/libdm-file.c
index 290ad3234..2e5f14f6f 100644
--- a/libdm/libdm-file.c
+++ b/libdm/libdm-file.c
@@ -118,7 +118,7 @@ int dm_is_empty_dir(const char *dir)
break;
if (closedir(d))
- log_sys_error("closedir", dir);
+ log_sys_debug("closedir", dir);
return dirent ? 0 : 1;
}
diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
index 588c78d72..796ecfa78 100644
--- a/tools/lvmcmdline.c
+++ b/tools/lvmcmdline.c
@@ -3510,7 +3510,7 @@ static int _close_stray_fds(const char *command, struct custom_fds *custom_fds)
}
if (closedir(d))
- log_sys_error("closedir", _fd_dir);
+ log_sys_debug("closedir", _fd_dir);
#endif
return 1;
3 years, 2 months
main - cleanup: no backtraces needed after log_error
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=5f7a7af7f201fea454b...
Commit: 5f7a7af7f201fea454bc4200bc76c4c75ef95463
Parent: c05077f4d4534fd0f63a9642b596262843f81e30
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Mar 9 11:42:29 2021 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Mar 10 01:11:52 2021 +0100
cleanup: no backtraces needed after log_error
Reduce double backtracing.
---
lib/integrity/integrity.c | 2 +-
lib/metadata/integrity_manip.c | 26 +++++++++++++-------------
lib/metadata/lv_manip.c | 6 +++---
lib/metadata/metadata.c | 9 +++------
lib/metadata/pv_list.c | 8 +++++---
lib/metadata/raid_manip.c | 8 ++++----
tools/lvchange.c | 2 +-
tools/lvconvert.c | 16 ++++++++--------
tools/lvmdevices.c | 6 +++---
tools/pvck.c | 2 +-
tools/pvscan.c | 2 +-
tools/toollib.c | 4 ++--
12 files changed, 45 insertions(+), 46 deletions(-)
diff --git a/lib/integrity/integrity.c b/lib/integrity/integrity.c
index 7423e04ae..e4f99b400 100644
--- a/lib/integrity/integrity.c
+++ b/lib/integrity/integrity.c
@@ -294,7 +294,7 @@ static int _integrity_add_target_line(struct dev_manager *dm,
if (!seg->integrity_data_sectors) {
log_error("_integrity_add_target_line zero size");
- return_0;
+ return 0;
}
if (!dm_tree_node_add_integrity_target(node, seg->integrity_data_sectors,
diff --git a/lib/metadata/integrity_manip.c b/lib/metadata/integrity_manip.c
index abf90d850..4fbccfb3c 100644
--- a/lib/metadata/integrity_manip.c
+++ b/lib/metadata/integrity_manip.c
@@ -332,20 +332,20 @@ static int _set_integrity_block_size(struct cmd_context *cmd, struct logical_vol
if (lbs_4k && lbs_512) {
log_error("Integrity requires consistent logical block size for LV devices.");
- goto_bad;
+ goto bad;
}
if (settings->block_size &&
(settings->block_size != 512 && settings->block_size != 1024 &&
settings->block_size != 2048 && settings->block_size != 4096)) {
log_error("Invalid integrity block size, possible values are 512, 1024, 2048, 4096");
- goto_bad;
+ goto bad;
}
if (lbs_4k && settings->block_size && (settings->block_size < 4096)) {
log_error("Integrity block size %u not allowed with device logical block size 4096.",
settings->block_size);
- goto_bad;
+ goto bad;
}
if (!strcmp(cmd->name, "lvcreate")) {
@@ -369,11 +369,11 @@ static int _set_integrity_block_size(struct cmd_context *cmd, struct logical_vol
if (dm_snprintf(pathname, sizeof(pathname), "%s%s/%s", cmd->dev_dir,
lv->vg->name, lv->name) < 0) {
log_error("Path name too long to get LV block size %s", display_lvname(lv));
- goto_bad;
+ goto bad;
}
if (!(fs_dev = dev_cache_get(cmd, pathname, NULL))) {
log_error("Device for LV not found to check block size %s", display_lvname(lv));
- goto_bad;
+ goto bad;
}
/*
@@ -435,7 +435,7 @@ static int _set_integrity_block_size(struct cmd_context *cmd, struct logical_vol
if (settings->block_size > fs_block_size) {
log_error("Integrity block size %u cannot be larger than file system block size %u.",
settings->block_size, fs_block_size);
- goto_bad;
+ goto bad;
}
log_print("Using integrity block size %u for file system block size %u.",
settings->block_size, fs_block_size);
@@ -550,7 +550,7 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
if (!seg_is_striped(first_seg(lv_image))) {
log_error("raid image must be linear to add integrity");
- goto_bad;
+ goto bad;
}
/*
@@ -570,7 +570,7 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
if (!get_pv_list_for_lv(cmd->mem, lv_image, &allocatable_pvs)) {
log_error("Failed to build list of PVs for %s.", display_lvname(lv_image));
- goto_bad;
+ goto bad;
}
dm_list_iterate_items(pvl, &allocatable_pvs) {
@@ -620,19 +620,19 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
if (!activate_lv(cmd, meta_lv)) {
log_error("Failed to activate LV %s to zero", display_lvname(meta_lv));
- goto_bad;
+ goto bad;
}
if (!wipe_lv(meta_lv, wipe)) {
log_error("Failed to zero LV for integrity metadata %s", display_lvname(meta_lv));
if (deactivate_lv(cmd, meta_lv))
log_error("Failed to deactivate LV %s after zero", display_lvname(meta_lv));
- goto_bad;
+ goto bad;
}
if (!deactivate_lv(cmd, meta_lv)) {
log_error("Failed to deactivate LV %s after zero", display_lvname(meta_lv));
- goto_bad;
+ goto bad;
}
}
@@ -726,7 +726,7 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
/* vg_write(), suspend_lv(), vg_commit(), resume_lv() */
if (!lv_update_and_reload(lv)) {
log_error("LV update and reload failed");
- goto_bad;
+ goto bad;
}
revert_meta_lvs = 0;
@@ -747,7 +747,7 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
if (!activate_lv(cmd, lv)) {
log_error("Failed to activate integrity LV to initialize.");
- goto_bad;
+ goto bad;
}
}
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index 2ecd45eb1..74a34c9cd 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -1367,7 +1367,7 @@ int add_lv_segment_areas(struct lv_segment *seg, uint32_t new_area_count)
if (!(newareas = dm_pool_zalloc(seg->lv->vg->vgmem, areas_sz))) {
log_error("Failed to allocate widened LV segment for %s.",
display_lvname(seg->lv));
- return_0;
+ return 0;
}
if (seg->area_count)
@@ -4359,12 +4359,12 @@ static int _lv_extend_layered_lv(struct alloc_handle *ah,
if (!(lv_imeta = seg_image->integrity_meta_dev)) {
log_error("1");
- return_0;
+ return 0;
}
if (!(lv_iorig = seg_lv(seg_image, 0))) {
log_error("2");
- return_0;
+ return 0;
}
/* new size in sectors */
diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c
index 22cb78337..f82ada8be 100644
--- a/lib/metadata/metadata.c
+++ b/lib/metadata/metadata.c
@@ -2682,15 +2682,13 @@ int vg_validate(struct volume_group *vg)
}
if (!(vhash.historical_lvname = dm_hash_create(dm_list_size(&vg->historical_lvs)))) {
- log_error("Failed to allocate historical LV name hash");
r = 0;
- goto out;
+ goto_out;
}
if (!(vhash.historical_lvid = dm_hash_create(dm_list_size(&vg->historical_lvs)))) {
- log_error("Failed to allocate historical LV uuid hash");
r = 0;
- goto out;
+ goto_out;
}
dm_list_iterate_items(glvl, &vg->historical_lvs) {
@@ -3043,8 +3041,7 @@ int vg_write(struct volume_group *vg)
}
if (!mda->ops->vg_write) {
- log_error("Format does not support writing volume"
- "group metadata areas");
+ log_error("Format does not support writing volume group metadata areas.");
revert = 1;
break;
}
diff --git a/lib/metadata/pv_list.c b/lib/metadata/pv_list.c
index 143b573b6..813e8e525 100644
--- a/lib/metadata/pv_list.c
+++ b/lib/metadata/pv_list.c
@@ -258,10 +258,12 @@ struct dm_list *create_pv_list(struct dm_pool *mem, struct volume_group *vg, int
return_NULL;
}
- if (dm_list_empty(r))
+ if (dm_list_empty(r)) {
log_error("No specified PVs have space available.");
+ return NULL;
+ }
- return dm_list_empty(r) ? NULL : r;
+ return r;
}
struct dm_list *clone_pv_list(struct dm_pool *mem, struct dm_list *pvsl)
@@ -277,7 +279,7 @@ struct dm_list *clone_pv_list(struct dm_pool *mem, struct dm_list *pvsl)
dm_list_init(r);
dm_list_iterate_items(pvl, pvsl) {
- if (!(new_pvl = dm_pool_zalloc(mem, sizeof(*new_pvl)))) {
+ if (!(new_pvl = dm_pool_alloc(mem, sizeof(*new_pvl)))) {
log_error("Unable to allocate physical volume list.");
return NULL;
}
diff --git a/lib/metadata/raid_manip.c b/lib/metadata/raid_manip.c
index 3b3e1d373..9c57e8b88 100644
--- a/lib/metadata/raid_manip.c
+++ b/lib/metadata/raid_manip.c
@@ -356,12 +356,12 @@ static int _get_dev_health(struct logical_volume *lv, uint32_t *kernel_devs,
if (!lv_raid_dev_count(lv, kernel_devs)) {
log_error("Failed to get device count.");
- return_0;
+ return 0;
}
if (!lv_raid_dev_health(lv, &rh)) {
log_error("Failed to get device health.");
- return_0;
+ return 0;
}
d = (unsigned) strlen(rh);
@@ -1056,7 +1056,7 @@ static int _alloc_image_components(struct logical_volume *lv,
if (!(lvl_array = dm_pool_alloc(lv->vg->vgmem,
sizeof(*lvl_array) * count * 2))) {
log_error("Memory allocation failed.");
- return_0;
+ return 0;
}
if (!(parallel_areas = build_parallel_areas_from_lv(lv, 0, 1)))
@@ -2186,7 +2186,7 @@ static int _vg_write_lv_suspend_commit_backup(struct volume_group *vg,
if (!vg_write(vg)) {
log_error("Write of VG %s failed.", vg->name);
- return_0;
+ return 0;
}
if (!(r = (origin_only ? suspend_lv_origin(vg->cmd, lock_lv) :
diff --git a/tools/lvchange.c b/tools/lvchange.c
index 31633987b..0189c365e 100644
--- a/tools/lvchange.c
+++ b/tools/lvchange.c
@@ -1655,7 +1655,7 @@ static int _lvchange_syncaction_single(struct cmd_context *cmd,
if (lv_raid_has_integrity(lv) && !strcmp(msg, "repair")) {
log_error("Use syncaction check to detect and correct integrity checksum mismatches.");
- return_ECMD_FAILED;
+ return ECMD_FAILED;
}
/* If LV is inactive here, ensure it's not active elsewhere. */
diff --git a/tools/lvconvert.c b/tools/lvconvert.c
index 87539be49..4e27008fa 100644
--- a/tools/lvconvert.c
+++ b/tools/lvconvert.c
@@ -3976,7 +3976,7 @@ static int _lvconvert_replace_pv_single(struct cmd_context *cmd, struct logical_
continue;
if (!(tmp_str = grouped_arg_str_value(group->arg_values, replace_ARG, NULL))) {
log_error("Failed to get '--replace' argument");
- return_ECMD_FAILED;
+ return ECMD_FAILED;
}
if (!(replace_pvs[i++] = dm_pool_strdup(cmd->mem, tmp_str)))
return_ECMD_FAILED;
@@ -4192,7 +4192,7 @@ int lvconvert_combine_split_snapshot_cmd(struct cmd_context *cmd, int argc, char
if (!(vglv = dm_pool_alloc(cmd->mem, vglv_sz)) ||
dm_snprintf(vglv, vglv_sz, "%s/%s", vgname, lvname2_orig) < 0) {
log_error("vg/lv string alloc failed.");
- return_ECMD_FAILED;
+ return ECMD_FAILED;
}
/* vglv is now vgname/lvname2 and replaces lvname2_orig */
@@ -5976,7 +5976,7 @@ static int _set_writecache_block_size(struct cmd_context *cmd,
if (!get_pv_list_for_lv(cmd->mem, lv, &pvs_list)) {
log_error("Failed to build list of PVs for %s.", display_lvname(lv));
- goto_bad;
+ goto bad;
}
dm_list_iterate_items(pvl, &pvs_list) {
@@ -6006,19 +6006,19 @@ static int _set_writecache_block_size(struct cmd_context *cmd,
if (lbs_4k && lbs_512) {
log_error("Writecache requires consistent logical block size for LV devices.");
- goto_bad;
+ goto bad;
}
if (lbs_4k && block_size_setting && (block_size_setting < 4096)) {
log_error("Writecache block size %u not allowed with device logical block size 4096.",
block_size_setting);
- goto_bad;
+ goto bad;
}
if (dm_snprintf(pathname, sizeof(pathname), "%s/%s/%s", cmd->dev_dir,
lv->vg->name, lv->name) < 0) {
log_error("Path name too long to get LV block size %s", display_lvname(lv));
- goto_bad;
+ goto bad;
}
if (!sync_local_dev_names(cmd))
@@ -6031,7 +6031,7 @@ static int _set_writecache_block_size(struct cmd_context *cmd,
goto skip_fs;
}
log_error("Device for LV not found to check block size %s", pathname);
- goto_bad;
+ goto bad;
}
/*
@@ -6102,7 +6102,7 @@ skip_fs:
else {
log_error("Writecache block size %u cannot be larger than file system block size %u.",
block_size_setting, fs_block_size);
- goto_bad;
+ goto bad;
}
}
diff --git a/tools/lvmdevices.c b/tools/lvmdevices.c
index 84b8e8003..42fa189c3 100644
--- a/tools/lvmdevices.c
+++ b/tools/lvmdevices.c
@@ -276,7 +276,7 @@ int lvmdevices(struct cmd_context *cmd, int argc, char **argv)
*/
if (!(dev = dev_cache_get(cmd, devname, NULL))) {
log_error("No device found for %s.", devname);
- goto_bad;
+ goto bad;
}
/*
@@ -412,7 +412,7 @@ int lvmdevices(struct cmd_context *cmd, int argc, char **argv)
if (!(du = get_du_for_pvid(cmd, pvid))) {
log_error("PVID not found in devices file.");
- goto_bad;
+ goto bad;
}
dm_list_del(&du->list);
@@ -420,7 +420,7 @@ int lvmdevices(struct cmd_context *cmd, int argc, char **argv)
if ((du2 = get_du_for_pvid(cmd, pvid))) {
log_error("Multiple devices file entries for PVID %s (%s %s), remove by device name.",
pvid, du->devname, du2->devname);
- goto_bad;
+ goto bad;
}
if (du->devname && (du->devname[0] != '.')) {
diff --git a/tools/pvck.c b/tools/pvck.c
index 46ef03fb6..2af34dc57 100644
--- a/tools/pvck.c
+++ b/tools/pvck.c
@@ -1720,7 +1720,7 @@ static int _dump_search(struct cmd_context *cmd, const char *dump, struct settin
log_print("Override defaults with --settings \"mda_offset=<bytes> mda_size=<bytes>\"");
} else {
log_error("No mda location.");
- return_0;
+ return 0;
}
search:
diff --git a/tools/pvscan.c b/tools/pvscan.c
index 6ade29bfe..fdd8c482f 100644
--- a/tools/pvscan.c
+++ b/tools/pvscan.c
@@ -1456,7 +1456,7 @@ static int _pvscan_cache_args(struct cmd_context *cmd, int argc, char **argv,
if (!setup_devices(cmd)) {
log_error("Failed to set up devices.");
- return_0;
+ return 0;
}
/*
diff --git a/tools/toollib.c b/tools/toollib.c
index 28bfb8398..c8540b005 100644
--- a/tools/toollib.c
+++ b/tools/toollib.c
@@ -4060,7 +4060,7 @@ static int _process_duplicate_pvs(struct cmd_context *cmd,
*/
if (!(info = lvmcache_info_from_pvid(devl->dev->pvid, NULL, 0))) {
log_error(INTERNAL_ERROR "No info for pvid");
- return_ECMD_FAILED;
+ return ECMD_FAILED;
}
vgname = lvmcache_vgname_from_info(info);
@@ -5343,7 +5343,7 @@ int pvcreate_each_device(struct cmd_context *cmd,
*/
if (must_use_all && !dm_list_empty(&pp->arg_fail)) {
log_error("Command requires all devices to be found.");
- return_0;
+ return 0;
}
/*
3 years, 2 months