x86/paravirt: make set_pud operation common
Remove duplicate set_pud()s. Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
60b3f626de
commit
28c6075c72
@ -1086,17 +1086,19 @@ static inline pmdval_t pmd_val(pmd_t pmd)
|
|||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
#endif /* PAGETABLE_LEVELS >= 3 */
|
|
||||||
|
|
||||||
#ifdef CONFIG_X86_PAE
|
static inline void set_pud(pud_t *pudp, pud_t pud)
|
||||||
|
|
||||||
static inline void set_pud(pud_t *pudp, pud_t pudval)
|
|
||||||
{
|
{
|
||||||
PVOP_VCALL3(pv_mmu_ops.set_pud, pudp,
|
pudval_t val = native_pud_val(pud);
|
||||||
pudval.pgd.pgd, pudval.pgd.pgd >> 32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* CONFIG_X86_PAE */
|
if (sizeof(pudval_t) > sizeof(long))
|
||||||
|
PVOP_VCALL3(pv_mmu_ops.set_pud, pudp,
|
||||||
|
val, (u64)val >> 32);
|
||||||
|
else
|
||||||
|
PVOP_VCALL2(pv_mmu_ops.set_pud, pudp,
|
||||||
|
val);
|
||||||
|
}
|
||||||
|
#endif /* PAGETABLE_LEVELS >= 3 */
|
||||||
|
|
||||||
/* Lazy mode for batching updates / context switch */
|
/* Lazy mode for batching updates / context switch */
|
||||||
enum paravirt_lazy_mode {
|
enum paravirt_lazy_mode {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user