Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=28c6075c72a312986f6d7802005251bdb91ca80c Commit: 28c6075c72a312986f6d7802005251bdb91ca80c Parent: 60b3f626dee9f0b1b656918e40e211822c18200d Author: Jeremy Fitzhardinge <[EMAIL PROTECTED]> AuthorDate: Wed Jan 30 13:33:15 2008 +0100 Committer: Ingo Molnar <[EMAIL PROTECTED]> CommitDate: Wed Jan 30 13:33:15 2008 +0100
x86/paravirt: make set_pud operation common Remove duplicate set_pud()s. Signed-off-by: Jeremy Fitzhardinge <[EMAIL PROTECTED]> Signed-off-by: Ingo Molnar <[EMAIL PROTECTED]> Signed-off-by: Thomas Gleixner <[EMAIL PROTECTED]> --- include/asm-x86/paravirt.h | 18 ++++++++++-------- 1 files changed, 10 insertions(+), 8 deletions(-) diff --git a/include/asm-x86/paravirt.h b/include/asm-x86/paravirt.h index d9957ec..c56b17a 100644 --- a/include/asm-x86/paravirt.h +++ b/include/asm-x86/paravirt.h @@ -1086,17 +1086,19 @@ static inline pmdval_t pmd_val(pmd_t pmd) return ret; } -#endif /* PAGETABLE_LEVELS >= 3 */ - -#ifdef CONFIG_X86_PAE -static inline void set_pud(pud_t *pudp, pud_t pudval) +static inline void set_pud(pud_t *pudp, pud_t pud) { - PVOP_VCALL3(pv_mmu_ops.set_pud, pudp, - pudval.pgd.pgd, pudval.pgd.pgd >> 32); -} + pudval_t val = native_pud_val(pud); -#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 */ enum paravirt_lazy_mode { - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html