summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSascha Bischoff <sascha.bischoff@arm.com>2017-04-18 15:11:15 +0100
committerAndreas Sandberg <andreas.sandberg@arm.com>2017-07-10 08:30:42 +0000
commitfd5b754974dd7b76a0b8798eb206a4c76a311cee (patch)
tree613833a84cd2545a9d1a8ec41ce610f4274d3247 /src
parentff87b8ad52145045bc3f4d1082204d962d7c3dd5 (diff)
downloadgem5-fd5b754974dd7b76a0b8798eb206a4c76a311cee.tar.xz
dev: Fix address type promotion issues in VirtIO devices
With the change we explicitly update the types for the VirtIO bit masks to be Addr (uint64_t). By changing this, we ensure type promotion where it is needed. Therefore, this fixes issues where, in certain situations, address calculations were performed in 32-bits, resulting in overflows. Change-Id: I5c5c3f9a3f94e806812282da01268e18ae0d2d39 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/3968
Diffstat (limited to 'src')
-rw-r--r--src/dev/virtio/base.hh6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dev/virtio/base.hh b/src/dev/virtio/base.hh
index 89c281f21..ed3b1b431 100644
--- a/src/dev/virtio/base.hh
+++ b/src/dev/virtio/base.hh
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2016 ARM Limited
+ * Copyright (c) 2014, 2016-2017 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -433,8 +433,8 @@ public:
* Page size used by VirtIO.\ It's hard-coded to 4096 bytes in
* the spec for historical reasons.
*/
- static const unsigned ALIGN_BITS = 12;
- static const unsigned ALIGN_SIZE = 1 << ALIGN_BITS;
+ static const Addr ALIGN_BITS = 12;
+ static const Addr ALIGN_SIZE = 1 << ALIGN_BITS;
/** @} */
protected: