Commit c60ff51e authored by Xiantao Zhang's avatar Xiantao Zhang Committed by Avi Kivity

KVM: ia64: fix vmm_spin_{un}lock for !CONFIG_SMP

In the case of !CONFIG_SMP, raw_spinlock_t is empty and the spinlock functions
don't build.  Fix by defining spinlock functions for the uniprocessor case.
Signed-off-by: default avatarXiantao Zhang <xiantao.zhang@intel.com>
Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
parent 928d4bf7
...@@ -384,6 +384,10 @@ static inline u64 __gpfn_is_io(u64 gpfn) ...@@ -384,6 +384,10 @@ static inline u64 __gpfn_is_io(u64 gpfn)
#define MODE_IND(psr) \ #define MODE_IND(psr) \
(((psr).it << 2) + ((psr).dt << 1) + (psr).rt) (((psr).it << 2) + ((psr).dt << 1) + (psr).rt)
#ifndef CONFIG_SMP
#define _vmm_raw_spin_lock(x) do {}while(0)
#define _vmm_raw_spin_unlock(x) do {}while(0)
#else
#define _vmm_raw_spin_lock(x) \ #define _vmm_raw_spin_lock(x) \
do { \ do { \
__u32 *ia64_spinlock_ptr = (__u32 *) (x); \ __u32 *ia64_spinlock_ptr = (__u32 *) (x); \
...@@ -403,6 +407,7 @@ static inline u64 __gpfn_is_io(u64 gpfn) ...@@ -403,6 +407,7 @@ static inline u64 __gpfn_is_io(u64 gpfn)
do { barrier(); \ do { barrier(); \
((spinlock_t *)x)->raw_lock.lock = 0; } \ ((spinlock_t *)x)->raw_lock.lock = 0; } \
while (0) while (0)
#endif
void vmm_spin_lock(spinlock_t *lock); void vmm_spin_lock(spinlock_t *lock);
void vmm_spin_unlock(spinlock_t *lock); void vmm_spin_unlock(spinlock_t *lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment