Force rsm to be visible, preventing possible looping with
virtual psr.i masked.
Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
/* 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),