On (Fri) Feb 12 2010 [15:42:14], Michael S. Tsirkin wrote: > Since commit 98b19252cf1bd97c54bc4613f3537c5ec0aae263, all > serial devices declare MULTIPORT feature. > To allow 0.12 compatibility, we should clear this when > max_nr_ports is 1.
In addition to this, setting max_nr_ports to 1 is needed when -M 0.12 is selected. However, is this the only way to do it? Gerd? > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > --- > hw/virtio-serial-bus.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/virtio-serial-bus.c b/hw/virtio-serial-bus.c > index ab456ea..d0e0219 100644 > --- a/hw/virtio-serial-bus.c > +++ b/hw/virtio-serial-bus.c > @@ -335,8 +335,10 @@ static void handle_input(VirtIODevice *vdev, VirtQueue > *vq) > > static uint32_t get_features(VirtIODevice *vdev, uint32_t features) > { > - features |= (1 << VIRTIO_CONSOLE_F_MULTIPORT); > - > + VirtIOSerial *vser = DO_UPCAST(VirtIOSerial, vdev, vdev); > + if (vser->bus->max_nr_ports > 1) { > + features |= (1 << VIRTIO_CONSOLE_F_MULTIPORT); > + } > return features; > } > > -- > 1.6.6.144.g5c3af Amit