Message ID | 20250508133550.81391-27-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | hw/i386/pc: Remove deprecated 2.6 and 2.7 PC machines | expand |
On 08/05/2025 14:35, Philippe Mathieu-Daudé wrote: > The VIRTIO_CONSOLE_F_EMERG_WRITE feature bit was only set > in the hw_compat_2_7[] array, via the 'emergency-write=off' > property. We removed all machines using that array, lets remove > that property. All instances have this feature bit set and > it can not be disabled. VirtIOSerial::host_features mask is > now unused, remove it. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > include/hw/virtio/virtio-serial.h | 2 -- > hw/char/virtio-serial-bus.c | 9 +++------ > 2 files changed, 3 insertions(+), 8 deletions(-) > > diff --git a/include/hw/virtio/virtio-serial.h b/include/hw/virtio/virtio-serial.h > index d87c62eab7a..e6ceacec309 100644 > --- a/include/hw/virtio/virtio-serial.h > +++ b/include/hw/virtio/virtio-serial.h > @@ -185,8 +185,6 @@ struct VirtIOSerial { > struct VirtIOSerialPostLoad *post_load; > > virtio_serial_conf serial; > - > - uint64_t host_features; > }; > > /* Interface to the virtio-serial bus */ > diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c > index eb79f5258b6..cfc8fa42186 100644 > --- a/hw/char/virtio-serial-bus.c > +++ b/hw/char/virtio-serial-bus.c > @@ -557,7 +557,7 @@ static uint64_t get_features(VirtIODevice *vdev, uint64_t features, > > vser = VIRTIO_SERIAL(vdev); > > - features |= vser->host_features; > + features |= BIT_ULL(VIRTIO_CONSOLE_F_EMERG_WRITE); > if (vser->bus.max_nr_ports > 1) { > virtio_add_feature(&features, VIRTIO_CONSOLE_F_MULTIPORT); > } > @@ -587,8 +587,7 @@ static void set_config(VirtIODevice *vdev, const uint8_t *config_data) > VirtIOSerialPortClass *vsc; > uint8_t emerg_wr_lo; > > - if (!virtio_has_feature(vser->host_features, > - VIRTIO_CONSOLE_F_EMERG_WRITE) || !config->emerg_wr) { > + if (!config->emerg_wr) { > return; > } > > @@ -1039,7 +1038,7 @@ static void virtio_serial_device_realize(DeviceState *dev, Error **errp) > return; > } > > - if (!virtio_has_feature(vser->host_features, > + if (!virtio_has_feature(vdev->host_features, > VIRTIO_CONSOLE_F_EMERG_WRITE)) { > config_size = offsetof(struct virtio_console_config, emerg_wr); > } > @@ -1155,8 +1154,6 @@ static const VMStateDescription vmstate_virtio_console = { > static const Property virtio_serial_properties[] = { > DEFINE_PROP_UINT32("max_ports", VirtIOSerial, serial.max_virtserial_ports, > 31), > - DEFINE_PROP_BIT64("emergency-write", VirtIOSerial, host_features, > - VIRTIO_CONSOLE_F_EMERG_WRITE, true), > }; > > static void virtio_serial_class_init(ObjectClass *klass, const void *data) LGTM. Reviewed-by: Mark Cave-Ayland <mark.caveayland@nutanix.com> ATB, Mark.
On Thu, May 08, 2025 at 03:35:49PM +0200, Philippe Mathieu-Daudé wrote: > Date: Thu, 8 May 2025 15:35:49 +0200 > From: Philippe Mathieu-Daudé <philmd@linaro.org> > Subject: [PATCH v4 26/27] hw/char/virtio-serial: Do not expose the > 'emergency-write' property > X-Mailer: git-send-email 2.47.1 > > The VIRTIO_CONSOLE_F_EMERG_WRITE feature bit was only set > in the hw_compat_2_7[] array, via the 'emergency-write=off' > property. We removed all machines using that array, lets remove > that property. All instances have this feature bit set and > it can not be disabled. VirtIOSerial::host_features mask is > now unused, remove it. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > include/hw/virtio/virtio-serial.h | 2 -- > hw/char/virtio-serial-bus.c | 9 +++------ > 2 files changed, 3 insertions(+), 8 deletions(-) Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
diff --git a/include/hw/virtio/virtio-serial.h b/include/hw/virtio/virtio-serial.h index d87c62eab7a..e6ceacec309 100644 --- a/include/hw/virtio/virtio-serial.h +++ b/include/hw/virtio/virtio-serial.h @@ -185,8 +185,6 @@ struct VirtIOSerial { struct VirtIOSerialPostLoad *post_load; virtio_serial_conf serial; - - uint64_t host_features; }; /* Interface to the virtio-serial bus */ diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c index eb79f5258b6..cfc8fa42186 100644 --- a/hw/char/virtio-serial-bus.c +++ b/hw/char/virtio-serial-bus.c @@ -557,7 +557,7 @@ static uint64_t get_features(VirtIODevice *vdev, uint64_t features, vser = VIRTIO_SERIAL(vdev); - features |= vser->host_features; + features |= BIT_ULL(VIRTIO_CONSOLE_F_EMERG_WRITE); if (vser->bus.max_nr_ports > 1) { virtio_add_feature(&features, VIRTIO_CONSOLE_F_MULTIPORT); } @@ -587,8 +587,7 @@ static void set_config(VirtIODevice *vdev, const uint8_t *config_data) VirtIOSerialPortClass *vsc; uint8_t emerg_wr_lo; - if (!virtio_has_feature(vser->host_features, - VIRTIO_CONSOLE_F_EMERG_WRITE) || !config->emerg_wr) { + if (!config->emerg_wr) { return; } @@ -1039,7 +1038,7 @@ static void virtio_serial_device_realize(DeviceState *dev, Error **errp) return; } - if (!virtio_has_feature(vser->host_features, + if (!virtio_has_feature(vdev->host_features, VIRTIO_CONSOLE_F_EMERG_WRITE)) { config_size = offsetof(struct virtio_console_config, emerg_wr); } @@ -1155,8 +1154,6 @@ static const VMStateDescription vmstate_virtio_console = { static const Property virtio_serial_properties[] = { DEFINE_PROP_UINT32("max_ports", VirtIOSerial, serial.max_virtserial_ports, 31), - DEFINE_PROP_BIT64("emergency-write", VirtIOSerial, host_features, - VIRTIO_CONSOLE_F_EMERG_WRITE, true), }; static void virtio_serial_class_init(ObjectClass *klass, const void *data)
The VIRTIO_CONSOLE_F_EMERG_WRITE feature bit was only set in the hw_compat_2_7[] array, via the 'emergency-write=off' property. We removed all machines using that array, lets remove that property. All instances have this feature bit set and it can not be disabled. VirtIOSerial::host_features mask is now unused, remove it. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- include/hw/virtio/virtio-serial.h | 2 -- hw/char/virtio-serial-bus.c | 9 +++------ 2 files changed, 3 insertions(+), 8 deletions(-)