Re: [RFC PATCH 4/4] virtio-net: sleep instead of busy waiting for cvq command

From: Jason Wang
Date: Thu Dec 22 2022 - 22:01:58 EST


On Thu, Dec 22, 2022 at 11:55 PM Alvaro Karsz
<alvaro.karsz@xxxxxxxxxxxxx> wrote:
>
> My point is that the device may complete the control command after the timeout,

This needs to be proposed to the virtio spec first. And actually we
need more than this:

1) we still need a way to deal with the device without this feature
2) driver can't depend solely on what is advertised by the device (e.g
device can choose to advertise a very long timeout)

> so, if I'm not mistaken, next time we send a control command and call
> virtqueue_wait_for_used we'll get the previous response.
>

In the next version, I will first put BAD_RING() to prevent future
requests for cvq.

Note that the patch can't fix all the issues, we need more things on
top. But it's a good step and it will behave much better than the
current code.

Thanks