[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC 0/2] virtio-rng: add a control queue
From: |
Michael S. Tsirkin |
Subject: |
Re: [RFC 0/2] virtio-rng: add a control queue |
Date: |
Wed, 29 Jul 2020 10:15:48 -0400 |
On Tue, Jul 28, 2020 at 03:45:26PM +0200, Laurent Vivier wrote:
> On 29/01/2020 16:43, Stefan Hajnoczi wrote:
> > On Fri, Jan 24, 2020 at 03:05:18PM +0100, Laurent Vivier wrote:
> >> On 24/01/2020 12:02, Stefan Hajnoczi wrote:
> >>> On Thu, Jan 23, 2020 at 04:16:58PM +0100, Laurent Vivier wrote:
> >>>> The kernel needs sometime to be able to cancel an ongoing command.
> >>>>
> >>>> For instance, if the virtio-rng device uses the egd backend
> >>>> and this backend doesn't provide data, the buffer provided by the
> >>>> kernel is kept as long as it is needed.
> >>>>
> >>>> On the kernel side, a read blocks until the buffer returns from QEMU.
> >>>>
> >>>> As the read is done with a mutex held, all the hw_random interface
> >>>> hangs and we cannot switch to another hw_random backend.
> >>>>
> >>>> So this series adds a control queue to the virtio-rng device to allow
> >>>> to flush the virtio-rng input queue to release the kernel mutex and
> >>>> to allow to switch to another device.
> >>>>
> >>>> The kernel side series can be found at:
> >>>>
> >>>> https://github.com/vivier/linux/commits/virtio-rng-ctrl
> >>>>
> >>>> Laurent Vivier (2):
> >>>> virtio-rng: prepare the introduction of a control queue
> >>>> virtio-rng: add a control queue
> >>>>
> >>>> hw/core/machine.c | 1 +
> >>>> hw/virtio/trace-events | 6 ++
> >>>> hw/virtio/virtio-rng.c | 99 ++++++++++++++++++---
> >>>> include/hw/virtio/virtio-rng.h | 5 +-
> >>>> include/standard-headers/linux/virtio_rng.h | 14 +++
> >>>> 5 files changed, 111 insertions(+), 14 deletions(-)
> >>>
> >>> Where can I find the VIRTIO specification for this new virtqueue?
> >>
> >> I didn't update the specs.
> >>
> >> Is https://github.com/oasis-tcs/virtio-spec.git the document to update?
> >
> > Yes, please.
>
> I've updated the specs,
>
> Following
> https://github.com/oasis-tcs/virtio-spec/blob/master/CONTRIBUTING.md,
> I've opened an issue:
>
> https://github.com/oasis-tcs/virtio-spec/issues/83
>
> Is this the good process?
>
> Thanks,
> Laurent
It's ok but you also need to send spec patches by mail so
people can review.