Revision 052e87b0 hw/virtio/vhost.c

b/hw/virtio/vhost.c
81 81
        return 0;
82 82
    }
83 83
    start_addr = section->offset_within_address_space;
84
    end_addr = range_get_last(start_addr, section->size);
84
    end_addr = range_get_last(start_addr, int128_get64(section->size));
85 85
    start_addr = MAX(first, start_addr);
86 86
    end_addr = MIN(last, end_addr);
87 87

  
......
379 379
    struct vhost_dev *dev = container_of(listener, struct vhost_dev,
380 380
                                         memory_listener);
381 381
    hwaddr start_addr = section->offset_within_address_space;
382
    ram_addr_t size = section->size;
382
    ram_addr_t size = int128_get64(section->size);
383 383
    bool log_dirty = memory_region_is_logging(section->mr);
384 384
    int s = offsetof(struct vhost_memory, regions) +
385 385
        (dev->mem->nregions + 1) * sizeof dev->mem->regions[0];

Also available in: Unified diff