Revision e6baf613

b/hw/virtio/virtio-balloon.c
263 263
    config.num_pages = cpu_to_le32(dev->num_pages);
264 264
    config.actual = cpu_to_le32(dev->actual);
265 265

  
266
    memcpy(config_data, &config, 8);
266
    memcpy(config_data, &config, sizeof(struct virtio_balloon_config));
267 267
}
268 268

  
269 269
static void virtio_balloon_set_config(VirtIODevice *vdev,
......
272 272
    VirtIOBalloon *dev = VIRTIO_BALLOON(vdev);
273 273
    struct virtio_balloon_config config;
274 274
    uint32_t oldactual = dev->actual;
275
    memcpy(&config, config_data, 8);
275
    memcpy(&config, config_data, sizeof(struct virtio_balloon_config));
276 276
    dev->actual = le32_to_cpu(config.actual);
277 277
    if (dev->actual != oldactual) {
278 278
        qemu_balloon_changed(ram_size -
......
343 343
    VirtIOBalloon *s = VIRTIO_BALLOON(dev);
344 344
    int ret;
345 345

  
346
    virtio_init(vdev, "virtio-balloon", VIRTIO_ID_BALLOON, 8);
346
    virtio_init(vdev, "virtio-balloon", VIRTIO_ID_BALLOON,
347
                sizeof(struct virtio_balloon_config));
347 348

  
348 349
    ret = qemu_add_balloon_handler(virtio_balloon_to_target,
349 350
                                   virtio_balloon_stat, s);

Also available in: Unified diff