Alvaro Karsz
2022-Dec-22 15:54 UTC
[RFC PATCH 4/4] virtio-net: sleep instead of busy waiting for cvq command
My point is that the device may complete the control command after the 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.
Jason Wang
2022-Dec-23 03:00 UTC
[RFC PATCH 4/4] virtio-net: sleep instead of busy waiting for cvq command
On Thu, Dec 22, 2022 at 11:55 PM Alvaro Karsz <alvaro.karsz at solid-run.com> 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