Messages in this thread | | | From | Rusty Russell <> | Subject | Re: [PATCH RFC] virtio-balloon: fix add/get API use | Date | Wed, 04 Jul 2012 12:57:40 +0930 |
| |
On Mon, 2 Jul 2012 10:33:08 +0300, "Michael S. Tsirkin" <mst@redhat.com> wrote: > In virtio balloon virtqueue_get_buf might now run concurrently with > virtqueue_kick. I audited both and this seems safe in practice but > this is not guaranteed by the API. > Additionally, a spurious interrupt might in theory make > virtqueue_get_buf run in parallel with virtqueue_add_buf, which is racy. > > While we might try to protect against spurious callbacks it's > easier to fix the driver: balloon seems to be the only one > (mis)using the API like this, so let's just fix balloon. > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
I was thinking of a spinlock, but this is far more elegant.
And I added an explicit reference to the 'virtio: expose added descriptors immediately.' commit in your commit msg.
Kudos! Rusty.
| |