virtio-serial: fix virtio config size
commit7976a6d23151c780474bdac106f3cf1343a2d6ca
authorMichael S. Tsirkin <mst@redhat.com>
Wed, 25 Mar 2015 11:33:55 +0000 (25 12:33 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Wed, 25 Mar 2015 12:39:25 +0000 (25 13:39 +0100)
treec4d7b6609731e5fa6227d63c76873aa4aa89423f
parentc167e2e7eda609bbbb58650c1b82e8168106e40e
virtio-serial: fix virtio config size

commit 9b70c1790acacae54d559d38ca69186a85040bb8
    virtio-serial: switch to standard-headers

changes virtio_console_config size from 8 to 12 bytes:
it adds an optional 4 byte emerg_wr field.

As this crosses a power of two boundary, this changes the PCI BAR size,
which breaks migration compatibility with old qemu machine types.
It's probably a problem for other transports as well.

As a temporary fix, as we don't yet support this new field anyway,
simply make the config size smaller at init time.

Long terms we probably want something along the lines
of virtio_net_set_config_size.

Reported-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Cole Robinson <crobinso@redhat.com>
hw/char/virtio-serial-bus.c