[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [linux-2.6.18-xen] [IA64] barrier in xen_rsm_i



# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1197907615 25200
# Node ID 76c09a3354a8d7f8fd74cbdc7dbee2a1e152c74e
# Parent  fc406f9e9a0a8115b0b37e8c7fe37b1879c6a713
[IA64] barrier in xen_rsm_i

Force rsm to be visible, preventing possible looping with
virtual psr.i masked.

Signed-off-by: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
---
 include/asm-ia64/xen/privop.h |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)

diff -r fc406f9e9a0a -r 76c09a3354a8 include/asm-ia64/xen/privop.h
--- a/include/asm-ia64/xen/privop.h     Fri Dec 14 11:28:40 2007 +0000
+++ b/include/asm-ia64/xen/privop.h     Mon Dec 17 09:06:55 2007 -0700
@@ -229,7 +229,11 @@ extern void xen_set_eflag(unsigned long)
 
 /* turning off interrupts can be paravirtualized simply by writing
  * to a memory-mapped virtual psr.i bit (implemented as a 16-bit bool) */
-#define xen_rsm_i()    xen_set_virtual_psr_i(0)
+#define xen_rsm_i()                                                    \
+{                                                                      \
+       xen_set_virtual_psr_i(0);                                       \
+       barrier();                                                      \
+}
 
 /* turning on interrupts is a bit more complicated.. write to the
  * memory-mapped virtual psr.i bit first (to avoid race condition),

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.