mirror of https://github.com/xemu-project/xemu.git
hw/virtio: log potentially buggy guest drivers
If the guest driver attempts to use the UNUSED(30) bit it is potentially buggy as 6.3 Legacy Interface: Reserved Feature Bits states it "SHOULD NOT be negotiated". For now just log this guest error. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Acked-by: Jason Wang <jasowang@redhat.com> Message-Id: <20220802095010.3330793-9-alex.bennee@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
c97c76b3e7
commit
8d11c10d06
|
@ -2980,6 +2980,13 @@ int virtio_set_features(VirtIODevice *vdev, uint64_t val)
|
|||
if (vdev->status & VIRTIO_CONFIG_S_FEATURES_OK) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (val & (1ull << VIRTIO_F_BAD_FEATURE)) {
|
||||
qemu_log_mask(LOG_GUEST_ERROR,
|
||||
"%s: guest driver for %s has enabled UNUSED(30) feature bit!\n",
|
||||
__func__, vdev->name);
|
||||
}
|
||||
|
||||
ret = virtio_set_features_nocheck(vdev, val);
|
||||
if (virtio_vdev_has_feature(vdev, VIRTIO_RING_F_EVENT_IDX)) {
|
||||
/* VIRTIO_RING_F_EVENT_IDX changes the size of the caches. */
|
||||
|
|
Loading…
Reference in New Issue