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

[Xen-changelog] [xen-unstable] ia64: Some fixes after spinlock implementation changes.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1224608421 -3600
# Node ID d2f7243fc571ea78cbf3fe33e723aa8f30111daa
# Parent  f7c09997cf1133af257d3400ad31d26fc0aeab58
ia64: Some fixes after spinlock implementation changes.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/ia64/vmx/vmmu.c                      |    2 +-
 xen/include/asm-ia64/linux-xen/asm/spinlock.h |    4 ----
 2 files changed, 1 insertion(+), 5 deletions(-)

diff -r f7c09997cf11 -r d2f7243fc571 xen/arch/ia64/vmx/vmmu.c
--- a/xen/arch/ia64/vmx/vmmu.c  Tue Oct 21 14:15:11 2008 +0100
+++ b/xen/arch/ia64/vmx/vmmu.c  Tue Oct 21 18:00:21 2008 +0100
@@ -446,7 +446,7 @@ IA64FAULT vmx_vcpu_ptc_ga(VCPU *vcpu, u6
         do {
             cpu = v->processor;
             if (cpu != current->processor) {
-                spin_unlock_wait(&per_cpu(schedule_data, cpu).schedule_lock);
+                spin_barrier(&per_cpu(schedule_data, cpu).schedule_lock);
                 /* Flush VHPT on remote processors. */
                 smp_call_function_single(cpu, &ptc_ga_remote_func,
                                          &args, 0, 1);
diff -r f7c09997cf11 -r d2f7243fc571 
xen/include/asm-ia64/linux-xen/asm/spinlock.h
--- a/xen/include/asm-ia64/linux-xen/asm/spinlock.h     Tue Oct 21 14:15:11 
2008 +0100
+++ b/xen/include/asm-ia64/linux-xen/asm/spinlock.h     Tue Oct 21 18:00:21 
2008 +0100
@@ -130,7 +130,6 @@ do {                                                        
                                \
 #define _raw_spin_is_locked(x) ((x)->lock != 0)
 #define _raw_spin_unlock(x)    do { barrier(); (x)->lock = 0; } while (0)
 #define _raw_spin_trylock(x)   (cmpxchg_acq(&(x)->lock, 0, 1) == 0)
-#define spin_unlock_wait(x)    do { barrier(); } while ((x)->lock)
 
 typedef struct {
        volatile unsigned int read_counter      : 31;
@@ -140,9 +139,6 @@ typedef struct {
 #endif
 } raw_rwlock_t;
 #define _RAW_RW_LOCK_UNLOCKED /*(raw_rwlock_t)*/ { 0, 0 }
-
-#define read_can_lock(rw)      (*(volatile int *)(rw) >= 0)
-#define write_can_lock(rw)     (*(volatile int *)(rw) == 0)
 
 #define _raw_read_lock(rw)                                                     
        \
 do {                                                                           
        \

_______________________________________________
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®.