All of lore.kernel.org
 help / color / mirror / Atom feed
* master - thin: use 64bit arithmetic for checking meta size
@ 2013-07-23 12:58 Zdenek Kabelac
  0 siblings, 0 replies; only message in thread
From: Zdenek Kabelac @ 2013-07-23 12:58 UTC (permalink / raw)
  To: lvm-devel

Gitweb:        http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=6311be29e40af21a53ef2a09a99867fc4460a73e
Commit:        6311be29e40af21a53ef2a09a99867fc4460a73e
Parent:        e0856393c8a1c622871b07fb452fbbd7c0da537a
Author:        Zdenek Kabelac <zkabelac@redhat.com>
AuthorDate:    Tue Jul 23 10:46:50 2013 +0200
Committer:     Zdenek Kabelac <zkabelac@redhat.com>
CommitterDate: Tue Jul 23 14:58:07 2013 +0200

thin: use 64bit arithmetic for checking meta size

Avoid overflow since extents are just 32bit values.

(in release fix 87aca628)
---
 lib/metadata/lv_manip.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index 8882a0a..9284c7b 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -3440,7 +3440,7 @@ static int _lvresize_poolmetadata(struct cmd_context *cmd, struct volume_group *
 		extents += lv->le_count;
 	}
 
-	if (extents * vg->extent_size > DM_THIN_MAX_METADATA_SIZE) {
+	if ((uint64_t)extents * vg->extent_size > DM_THIN_MAX_METADATA_SIZE) {
 		log_print_unless_silent("Rounding size to maximum supported size 16GiB "
 					"for metadata volume %s.", lv->name);
 		extents = (DM_THIN_MAX_METADATA_SIZE + vg->extent_size - 1) /



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2013-07-23 12:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-23 12:58 master - thin: use 64bit arithmetic for checking meta size Zdenek Kabelac

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.