summaryrefslogtreecommitdiffstats
path: root/xlators/features
diff options
context:
space:
mode:
authorEmmanuel Dreyfus <manu@netbsd.org>2014-08-10 10:08:52 +0200
committerVijay Bellur <vbellur@redhat.com>2014-09-16 04:47:15 -0700
commitb30f9e56cd92906ccb97e046b8928d7de76b4b50 (patch)
tree744af182ac309350f8270d3f4c1d3df571a3fa53 /xlators/features
parentc7437f35df1127c05a4df0f7bf3ae95b71b7831e (diff)
Do not assume sizeof(size_t)
This fixes an assumption that sizeof(size_t) == sizeof(uint64_t), which is not guaranteed. At least on NetBSD/i386, size_t is 32 bit long. Caught by tests/basics/file-snapshot.t BUG: 764655 Change-Id: Ib7620a2ffe8758521886af37bc280101a040d860 Signed-off-by: Emmanuel Dreyfus <manu@netbsd.org> Reviewed-on: http://review.gluster.org/8441 Reviewed-by: Humble Devassy Chirammal <humble.devassy@gmail.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Dan Lambright <dlambrig@redhat.com>
Diffstat (limited to 'xlators/features')
-rw-r--r--xlators/features/qemu-block/src/qemu-block.c2
-rw-r--r--xlators/features/qemu-block/src/qemu-block.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/xlators/features/qemu-block/src/qemu-block.c b/xlators/features/qemu-block/src/qemu-block.c
index 48bbf314048..768866f6429 100644
--- a/xlators/features/qemu-block/src/qemu-block.c
+++ b/xlators/features/qemu-block/src/qemu-block.c
@@ -316,7 +316,7 @@ qb_setxattr_format (call_frame_t *frame, xlator_t *this, call_stub_t *stub,
qb_local->stub = stub;
qb_local->inode = inode_ref (inode);
- snprintf(qb_local->fmt, QB_XATTR_VAL_MAX, "%s:%lu", qb_inode->fmt,
+ snprintf(qb_local->fmt, QB_XATTR_VAL_MAX, "%s:%" PRId64, qb_inode->fmt,
qb_inode->size);
qb_coroutine (frame, qb_format_and_resume);
diff --git a/xlators/features/qemu-block/src/qemu-block.h b/xlators/features/qemu-block/src/qemu-block.h
index c95f2799ac6..21cdcec2613 100644
--- a/xlators/features/qemu-block/src/qemu-block.h
+++ b/xlators/features/qemu-block/src/qemu-block.h
@@ -40,7 +40,7 @@
typedef struct qb_inode {
char fmt[QB_XATTR_VAL_MAX]; /* this is only the format, not "format:size" */
- size_t size; /* virtual size in bytes */
+ uint64_t size; /* virtual size in bytes */
BlockDriverState *bs;
int refcnt;
uuid_t backing_gfid;