summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2013-07-02 15:35:14 +0930
committerRusty Russell <rusty@rustcorp.com.au>2013-07-02 15:42:05 +0930
commit0d69a65e97fc8090ee83c8639137b4b5c8ece237 (patch)
tree93e2bc0c120bf31c6ed70a95ad95317417df5e3e
parent8fd9a6365eb8a79a2d8f0e0baa01f4db6345e8dd (diff)
tools/lguest: real barriers.
Lguest guests are UP, but the host is probably SMP, so real barriers are required in case the device thread and the guest are on different CPUs. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-rw-r--r--tools/lguest/lguest.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/lguest/lguest.c b/tools/lguest/lguest.c
index 49ed25b5bbb9..a64f5cb0c15b 100644
--- a/tools/lguest/lguest.c
+++ b/tools/lguest/lguest.c
@@ -177,8 +177,8 @@ static struct termios orig_term;
* in precise order.
*/
#define wmb() __asm__ __volatile__("" : : : "memory")
-#define rmb() __asm__ __volatile__("" : : : "memory")
-#define mb() __asm__ __volatile__("" : : : "memory")
+#define rmb() __asm__ __volatile__("lock; addl $0,0(%%esp)" : : : "memory")
+#define mb() __asm__ __volatile__("lock; addl $0,0(%%esp)" : : : "memory")
/* Wrapper for the last available index. Makes it easier to change. */
#define lg_last_avail(vq) ((vq)->last_avail_idx)