[PATCH 0/4] Introduce <linux/mm_struct.h>

From: Kirill A. Shutemov
Date: Wed Jan 28 2015 - 17:11:04 EST


This patchset moves definition of mm_struct into separate header file.
It allows to get rid of nr_pmds if PMD page table level is folded.
We cannot do it with current mm_types.h because we need
__PAGETABLE_PMD_FOLDED from <asm/pgtable.h> which creates circular
dependencies.

I've done few build tests and looks like it works, but I expect breakage
on some configuration. Please test.

I hope one day we would rely on LTO for inlining instead of this header
mess :-/

Kirill A. Shutemov (4):
mm: move enum tlb_flush_reason into <trace/events/tlb.h>
mm: split up mm_struct to separate header file
mm: define __PAGETABLE_{PMD,PUD}_FOLDED to zero or one
mm: do not add nr_pmds into mm_struct if PMD is folded

arch/arm/include/asm/pgtable-2level.h | 2 +-
arch/arm64/include/asm/kvm_mmu.h | 4 +-
arch/arm64/kernel/efi.c | 1 +
arch/arm64/mm/hugetlbpage.c | 6 +-
arch/c6x/kernel/dma.c | 1 -
arch/microblaze/include/asm/pgtable.h | 2 +-
arch/mips/include/asm/pgalloc.h | 4 +-
arch/mips/kernel/asm-offsets.c | 4 +-
arch/mips/mm/init.c | 2 +-
arch/mips/mm/pgtable-64.c | 6 +-
arch/mips/mm/tlbex.c | 8 +-
arch/powerpc/mm/pgtable_64.c | 2 +-
arch/s390/include/asm/pgtable.h | 1 +
arch/sh/mm/init.c | 2 +-
arch/tile/mm/hugetlbpage.c | 4 +-
arch/tile/mm/pgtable.c | 4 +-
arch/x86/include/asm/mmu_context.h | 1 +
arch/x86/include/asm/pgtable.h | 15 +--
arch/x86/include/asm/xen/page.h | 2 +-
drivers/iommu/amd_iommu_v2.c | 1 +
drivers/staging/android/ion/ion.c | 1 -
include/asm-generic/4level-fixup.h | 2 +-
include/asm-generic/pgtable-nopmd.h | 2 +-
include/asm-generic/pgtable-nopud.h | 2 +-
include/asm-generic/pgtable.h | 8 ++
include/linux/mm.h | 5 +-
include/linux/mm_struct.h | 217 ++++++++++++++++++++++++++++++++
include/linux/mm_types.h | 226 ++--------------------------------
include/linux/mmu_notifier.h | 1 +
include/linux/sched.h | 1 +
include/trace/events/tlb.h | 15 ++-
kernel/fork.c | 2 +-
mm/init-mm.c | 1 +
mm/kmemcheck.c | 1 -
mm/memory.c | 4 +-
35 files changed, 289 insertions(+), 271 deletions(-)
create mode 100644 include/linux/mm_struct.h

--
2.1.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/