[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is
From: |
Cornelia Huck |
Subject: |
Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set |
Date: |
Tue, 28 Nov 2017 13:00:12 +0100 |
On Tue, 28 Nov 2017 16:57:34 +0530 (IST)
P J P <address@hidden> wrote:
> +-- On Tue, 28 Nov 2017, Stefan Hajnoczi wrote --+
> | > This is conflating different things:
> | > - vq does not exist (num == 0)
> | > - vq is not setup by the guest (desc == 0)
> | > - vq has no valid alignment (which is only relevant for legacy)
> |
> | I agree.
>
> Either case, vq would be unfit for use, no?
What is "unfit for use"?
I'm not quite sure what you want to achieve with this patch. I assume
you want to fix the issue that a guest may provide invalid values for
align etc. which can cause qemu to crash or behave badly.
If so, you need to do different things for the different points above.
- The guest should not muck around with a non-existing queue (num == 0)
in any case, so this should be fenced for any manipulation triggered
by the guest.
- Processing a non-setup queue (desc == 0; also applies to the other
buffers for virtio-1) should be skipped. However, _setting_ desc etc.
to 0 from the guest is fine (as long as it follows the other
constraints of the spec).
- Setting alignment to 0 only applies to legacy + virtio-mmio. I would
not overengineer fencing this. A simple check in update_rings should
be enough.
- [Qemu-devel] [PATCH v3 0/2] check VirtiQueue Vring objects, P J P, 2017/11/24
- [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, P J P, 2017/11/24
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, Cornelia Huck, 2017/11/27
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, Stefan Hajnoczi, 2017/11/27
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, P J P, 2017/11/27
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, Cornelia Huck, 2017/11/28
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, Stefan Hajnoczi, 2017/11/28
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, P J P, 2017/11/28
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set,
Cornelia Huck <=
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, P J P, 2017/11/29
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, Cornelia Huck, 2017/11/29
- Re: [Qemu-devel] [PATCH v3 1/2] virtio: check VirtQueue Vring object is set, P J P, 2017/11/30
[Qemu-devel] [PATCH v3 2/2] tests: add test to check VirtQueue object, P J P, 2017/11/24