diff options
author | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-02-16 15:18:11 +0000 |
---|---|---|
committer | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-02-16 15:18:11 +0000 |
commit | cc52cc88bfd5ae9a5327e2dce1892a19b167315a (patch) | |
tree | ca93d2bb691cac99637ca0c87cb4093db8792c1a /xenolinux-2.4.24-sparse | |
parent | 39dde2c759a07c0fd6e8f3796a9e82527fea2665 (diff) | |
download | xen-cc52cc88bfd5ae9a5327e2dce1892a19b167315a.tar.gz xen-cc52cc88bfd5ae9a5327e2dce1892a19b167315a.tar.bz2 xen-cc52cc88bfd5ae9a5327e2dce1892a19b167315a.zip |
bitkeeper revision 1.729 (4030df33sBhhycc0odkWGG3QYXaN1A)
hypervisor.h:
Add memory clobbers to every hypercall stub. Otherwise we get hard to diagnose bugs.
Diffstat (limited to 'xenolinux-2.4.24-sparse')
-rw-r--r-- | xenolinux-2.4.24-sparse/include/asm-xeno/hypervisor.h | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/xenolinux-2.4.24-sparse/include/asm-xeno/hypervisor.h b/xenolinux-2.4.24-sparse/include/asm-xeno/hypervisor.h index 34272a624f..f8183fcfd7 100644 --- a/xenolinux-2.4.24-sparse/include/asm-xeno/hypervisor.h +++ b/xenolinux-2.4.24-sparse/include/asm-xeno/hypervisor.h @@ -154,7 +154,7 @@ static inline int HYPERVISOR_set_trap_table(trap_info_t *table) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_set_trap_table), - "b" (table) ); + "b" (table) : "memory" ); return ret; } @@ -166,7 +166,7 @@ static inline int HYPERVISOR_mmu_update(mmu_update_t *req, int count) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_mmu_update), - "b" (req), "c" (count) ); + "b" (req), "c" (count) : "memory" ); if ( unlikely(ret < 0) ) panic("Failed mmu update: %p, %d", req, count); @@ -181,7 +181,7 @@ static inline int HYPERVISOR_console_write(const char *str, int count) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_console_write), - "b" (str), "c" (count) ); + "b" (str), "c" (count) : "memory" ); return ret; @@ -193,7 +193,7 @@ static inline int HYPERVISOR_set_gdt(unsigned long *frame_list, int entries) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_set_gdt), - "b" (frame_list), "c" (entries) ); + "b" (frame_list), "c" (entries) : "memory" ); return ret; @@ -240,7 +240,7 @@ static inline int HYPERVISOR_fpu_taskswitch(void) int ret; __asm__ __volatile__ ( TRAP_INSTR - : "=a" (ret) : "0" (__HYPERVISOR_fpu_taskswitch) ); + : "=a" (ret) : "0" (__HYPERVISOR_fpu_taskswitch) : "memory" ); return ret; } @@ -251,7 +251,7 @@ static inline int HYPERVISOR_yield(void) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_sched_op), - "b" (SCHEDOP_yield) ); + "b" (SCHEDOP_yield) : "memory" ); return ret; } @@ -262,7 +262,7 @@ static inline int HYPERVISOR_block(void) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_sched_op), - "b" (SCHEDOP_block) ); + "b" (SCHEDOP_block) : "memory" ); return ret; } @@ -273,7 +273,7 @@ static inline int HYPERVISOR_exit(void) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_sched_op), - "b" (SCHEDOP_exit) ); + "b" (SCHEDOP_exit) : "memory" ); return ret; } @@ -343,7 +343,7 @@ static inline int HYPERVISOR_set_debugreg(int reg, unsigned long value) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_set_debugreg), - "b" (reg), "c" (value) ); + "b" (reg), "c" (value) : "memory" ); return ret; } @@ -354,7 +354,7 @@ static inline unsigned long HYPERVISOR_get_debugreg(int reg) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_get_debugreg), - "b" (reg) ); + "b" (reg) : "memory" ); return ret; } @@ -366,7 +366,7 @@ static inline int HYPERVISOR_update_descriptor( __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_update_descriptor), - "b" (pa), "c" (word1), "d" (word2) ); + "b" (pa), "c" (word1), "d" (word2) : "memory" ); return ret; } @@ -377,7 +377,7 @@ static inline int HYPERVISOR_set_fast_trap(int idx) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_set_fast_trap), - "b" (idx) ); + "b" (idx) : "memory" ); return ret; } @@ -410,7 +410,7 @@ static inline long HYPERVISOR_kbd_op(unsigned char op, unsigned char val) __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_kbd_op), - "b" (op), "c" (val) ); + "b" (op), "c" (val) : "memory" ); return ret; } @@ -422,7 +422,7 @@ static inline int HYPERVISOR_update_va_mapping( __asm__ __volatile__ ( TRAP_INSTR : "=a" (ret) : "0" (__HYPERVISOR_update_va_mapping), - "b" (page_nr), "c" ((new_val).pte_low), "d" (flags) ); + "b" (page_nr), "c" ((new_val).pte_low), "d" (flags) : "memory" ); if ( unlikely(ret < 0) ) panic("Failed update VA mapping: %08lx, %08lx, %08lx", |