]> 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)
commit8499a89ac3ab9a7799266815f270f6d5c85b3fa1
tree680a59aa70e790a3735ae054be5888c0892ecb41
parentc32fa8872d6466029153c1dee2cbaade962560f1
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 14c47ea6caaa7c30ae2b6b2116f3c5366536be72.

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