]> git.baikalelectronics.ru Git - kernel.git/commit
virtio: correct the memory barrier in virtqueue_kick_prepare()
authorJason Wang <jasowang@redhat.com>
Fri, 20 Jan 2012 08:17:08 +0000 (16:17 +0800)
committerRusty Russell <rusty@rustcorp.com.au>
Fri, 27 Jan 2012 21:40:23 +0000 (08:10 +1030)
commit65433ab2cf634b8cfed28a70ed552fb6877b4349
tree680a59aa70e790a3735ae054be5888c0892ecb41
parent01e6594e184c4044ad5d6a433cbcd1e0b0f01ccd
virtio: correct the memory barrier in virtqueue_kick_prepare()

Use virtio_mb() to make sure the available index to be exposed before
checking the the avail event. Otherwise we may get stale value of
avail event in guest and never kick the host after.

Note: this fixes a bug introduced by 91c29160a2c6187ce938c9f235f1c2dd06e519e0.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: stable@kernel.org
drivers/virtio/virtio_ring.c