summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2018-11-02 21:10:21 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2018-11-03 16:10:31 +0100
commitc7789daec06110b7ed3663f1ba8cf91f40c8e572 (patch)
treeeeaa5111a3970832efb76fe75eff3d35bbfe80c6
parentbc1976011adb51951dc0280817b2c047ab22ac7c (diff)
downloadlvm2-c7789daec06110b7ed3663f1ba8cf91f40c8e572.tar.gz
cov: overflow before widen
Evaluate as 64bit arithmetic (instead of doing 32bit mults which can in this case purely teoretically overflow).
-rw-r--r--base/data-struct/radix-tree-adaptive.c2
-rw-r--r--lib/locking/lvmlockd.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/base/data-struct/radix-tree-adaptive.c b/base/data-struct/radix-tree-adaptive.c
index f5a8606d3..f8f3322b0 100644
--- a/base/data-struct/radix-tree-adaptive.c
+++ b/base/data-struct/radix-tree-adaptive.c
@@ -623,7 +623,7 @@ static void _degrade_to_n48(struct node256 *n256, struct value *result)
}
// Removes an entry in an array by sliding the values above it down.
-static void _erase_elt(void *array, unsigned obj_size, unsigned count, unsigned index)
+static void _erase_elt(void *array, size_t obj_size, unsigned count, unsigned index)
{
if (index == (count - 1))
// The simple case
diff --git a/lib/locking/lvmlockd.c b/lib/locking/lvmlockd.c
index d65e06fc6..969a7fe6e 100644
--- a/lib/locking/lvmlockd.c
+++ b/lib/locking/lvmlockd.c
@@ -389,7 +389,7 @@ static int _extend_sanlock_lv(struct cmd_context *cmd, struct volume_group *vg,
.resize = LV_EXTEND,
.force = 1,
};
- int i;
+ uint64_t i;
extend_bytes = extend_mb * ONE_MB_IN_BYTES;
extend_sectors = extend_bytes / SECTOR_SIZE;
@@ -443,8 +443,8 @@ static int _extend_sanlock_lv(struct cmd_context *cmd, struct volume_group *vg,
for (i = 0; i < extend_mb; i++) {
if (!dev_write_zeros(dev, old_size_bytes + (i * ONE_MB_IN_BYTES), ONE_MB_IN_BYTES)) {
- log_error("Extend sanlock LV %s cannot zero device at %llu.", display_lvname(lv),
- (unsigned long long)(old_size_bytes + i * ONE_MB_IN_BYTES));
+ log_error("Extend sanlock LV %s cannot zero device at " FMTu64 ".",
+ display_lvname(lv), (old_size_bytes + i * ONE_MB_IN_BYTES));
label_scan_invalidate(dev);
return 0;
}