Signed-off-by: Chenyi Qiang <chenyi.qiang@xxxxxxxxx> --- system/ram-block-attributes.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/system/ram-block-attributes.c b/system/ram-block-attributes.c index dbb8c9675b..68e8a02703 100644 --- a/system/ram-block-attributes.c +++ b/system/ram-block-attributes.c @@ -42,7 +42,8 @@ ram_block_attributes_rdm_is_populated(const RamDiscardManager *rdm, const RamBlockAttributes *attr = RAM_BLOCK_ATTRIBUTES(rdm); const size_t block_size = ram_block_attributes_get_block_size(attr); const uint64_t first_bit = section->offset_within_region / block_size; - const uint64_t last_bit = first_bit + int128_get64(section->size) / block_size - 1; + const uint64_t last_bit = + first_bit + int128_get64(section->size) / block_size - 1; unsigned long first_discarded_bit; first_discarded_bit = find_next_zero_bit(attr->bitmap, last_bit + 1, @@ -333,8 +334,8 @@ int ram_block_attributes_state_change(RamBlockAttributes *attr, int ret = 0; if (!ram_block_attributes_is_valid_range(attr, offset, size)) { - error_report("%s, invalid range: offset 0x%lx, size 0x%lx", - __func__, offset, size); + error_report("%s, invalid range: offset 0x%" PRIx64 ", size " + "0x%" PRIx64, __func__, offset, size); return -EINVAL; } @@ -402,7 +403,8 @@ RamBlockAttributes *ram_block_attributes_create(RAMBlock *ram_block) object_unref(OBJECT(attr)); return NULL; } - attr->bitmap_size = ROUND_UP(mr->size, block_size) / block_size; + attr->bitmap_size = + ROUND_UP(int128_get64(mr->size), block_size) / block_size; attr->bitmap = bitmap_new(attr->bitmap_size); return attr; -- 2.43.5