Change subject: dev: Fix address type promotion issues in VirtIO devices ...................................................................... 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 <[email protected]> --- M src/dev/virtio/base.hh 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/dev/virtio/base.hh b/src/dev/virtio/base.hh index 89c281f..ed3b1b4 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 @@ * 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: -- To view, visit https://gem5-review.googlesource.com/3968 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I5c5c3f9a3f94e806812282da01268e18ae0d2d39 Gerrit-Change-Number: 3968 Gerrit-PatchSet: 1 Gerrit-Owner: Andreas Sandberg <[email protected]> _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
Andreas Sandberg has uploaded this change for review. (
https://gem5-review.googlesource.com/3968
- [gem5-dev] Change in public/gem5[master]: dev: F... Andreas Sandberg (Gerrit)
- [gem5-dev] Change in public/gem5[master]: d... Andreas Sandberg (Gerrit)
- [gem5-dev] Change in public/gem5[master]: d... Andreas Sandberg (Gerrit)
