Re: [PATCHSET linux-2.6-x86:core/percpu] x86: misc clean up andunify x86_32/64 code paths

From: Ingo Molnar
Date: Wed Jan 21 2009 - 04:26:59 EST

* Tejun Heo <tj@xxxxxxxxxx> wrote:

> Hello,
> This patchset contains the following 10 patches mostly unifying 32 and
> 64bit code paths. 0001 and 0007-0010 are from me and 0002-0006 are
> from Brian Gerst.
> 0001-x86-update-canary-handling-during-switch.patch
> 0002-x86-clean-up-gdt_page-definition.patch
> 0003-x86-fix-percpu_write-with-64-bit-constants.patch
> 0004-x86-set-fs-to-__KERNEL_PERCPU-unconditionally-for.patch
> 0005-x86-merge-mmu_context.h.patch
> 0006-x86-merge-irq_regs.h.patch
> 0007-x86-uv-cleanup.patch
> 0008-x86-prepare-for-tlb-merge.patch
> 0009-x86-make-x86_32-use-tlb_64.c.patch
> 0010-x86-rename-tlb_64.c-to-tlb.c.patch
> 0001-0002 clean up after previous percpu changes. 0003 improves
> percpu op slightly. 0004 simplifies x86_32 init path. 0005-0010
> unifies mmu_context.h, irq_regs.h and tlb.c, which not only simplifies
> the source code but also improves performance by applying
> optimizations implemented for either bitness to the other one while
> unifying.
> The following git tree contains the above changes on top of
> core/percpu[1]. Please pull from it if there's no objection.
> git:// tj-percpu

Pulled into tip/core/percpu, thanks Tejun.

Very nice stuff! The SMP TLB flush code unification is a gem - i never
thought we'd get so far this quick ;-)

Note, i also merged the latest cpumask work into tip/core/percpu, to
resolve tlb_32.c conflicts. I also moved tlb.c from arch/x86/kernel/ to
arch/x86/mm/, where it really belongs conceptually.

-tip testing also stumbled upon a build error caused by the UV cleanups -
see the fix below.