diff options
Diffstat (limited to 'arch/x86/include/asm/paravirt.h')
-rw-r--r-- | arch/x86/include/asm/paravirt.h | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h index ff691736f5e9..0617d5cc9712 100644 --- a/arch/x86/include/asm/paravirt.h +++ b/arch/x86/include/asm/paravirt.h | |||
@@ -4,7 +4,7 @@ | |||
4 | * para-virtualization: those hooks are defined here. */ | 4 | * para-virtualization: those hooks are defined here. */ |
5 | 5 | ||
6 | #ifdef CONFIG_PARAVIRT | 6 | #ifdef CONFIG_PARAVIRT |
7 | #include <asm/page.h> | 7 | #include <asm/pgtable_types.h> |
8 | #include <asm/asm.h> | 8 | #include <asm/asm.h> |
9 | 9 | ||
10 | /* Bitmask of what can be clobbered: usually at least eax. */ | 10 | /* Bitmask of what can be clobbered: usually at least eax. */ |
@@ -1431,14 +1431,7 @@ static inline void arch_leave_lazy_cpu_mode(void) | |||
1431 | PVOP_VCALL0(pv_cpu_ops.lazy_mode.leave); | 1431 | PVOP_VCALL0(pv_cpu_ops.lazy_mode.leave); |
1432 | } | 1432 | } |
1433 | 1433 | ||
1434 | static inline void arch_flush_lazy_cpu_mode(void) | 1434 | void arch_flush_lazy_cpu_mode(void); |
1435 | { | ||
1436 | if (unlikely(paravirt_get_lazy_mode() == PARAVIRT_LAZY_CPU)) { | ||
1437 | arch_leave_lazy_cpu_mode(); | ||
1438 | arch_enter_lazy_cpu_mode(); | ||
1439 | } | ||
1440 | } | ||
1441 | |||
1442 | 1435 | ||
1443 | #define __HAVE_ARCH_ENTER_LAZY_MMU_MODE | 1436 | #define __HAVE_ARCH_ENTER_LAZY_MMU_MODE |
1444 | static inline void arch_enter_lazy_mmu_mode(void) | 1437 | static inline void arch_enter_lazy_mmu_mode(void) |
@@ -1451,13 +1444,7 @@ static inline void arch_leave_lazy_mmu_mode(void) | |||
1451 | PVOP_VCALL0(pv_mmu_ops.lazy_mode.leave); | 1444 | PVOP_VCALL0(pv_mmu_ops.lazy_mode.leave); |
1452 | } | 1445 | } |
1453 | 1446 | ||
1454 | static inline void arch_flush_lazy_mmu_mode(void) | 1447 | void arch_flush_lazy_mmu_mode(void); |
1455 | { | ||
1456 | if (unlikely(paravirt_get_lazy_mode() == PARAVIRT_LAZY_MMU)) { | ||
1457 | arch_leave_lazy_mmu_mode(); | ||
1458 | arch_enter_lazy_mmu_mode(); | ||
1459 | } | ||
1460 | } | ||
1461 | 1448 | ||
1462 | static inline void __set_fixmap(unsigned /* enum fixed_addresses */ idx, | 1449 | static inline void __set_fixmap(unsigned /* enum fixed_addresses */ idx, |
1463 | unsigned long phys, pgprot_t flags) | 1450 | unsigned long phys, pgprot_t flags) |
@@ -1482,6 +1469,7 @@ static inline int __raw_spin_is_contended(struct raw_spinlock *lock) | |||
1482 | { | 1469 | { |
1483 | return PVOP_CALL1(int, pv_lock_ops.spin_is_contended, lock); | 1470 | return PVOP_CALL1(int, pv_lock_ops.spin_is_contended, lock); |
1484 | } | 1471 | } |
1472 | #define __raw_spin_is_contended __raw_spin_is_contended | ||
1485 | 1473 | ||
1486 | static __always_inline void __raw_spin_lock(struct raw_spinlock *lock) | 1474 | static __always_inline void __raw_spin_lock(struct raw_spinlock *lock) |
1487 | { | 1475 | { |