Browse Source

sched/headers: Prepare to remove the <linux/mm_types.h> dependency from <linux/sched.h>

Update code that relied on sched.h including various MM types for them.

This will allow us to remove the <linux/mm_types.h> include from <linux/sched.h>.

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Ingo Molnar 8 years ago
parent
commit
589ee62844
89 changed files with 125 additions and 25 deletions
  1. 1 0
      arch/alpha/include/asm/a.out-core.h
  2. 2 0
      arch/alpha/include/asm/mmu_context.h
  3. 2 0
      arch/arc/mm/tlb.c
  4. 2 0
      arch/arm/include/asm/mmu_context.h
  5. 4 3
      arch/arm/include/asm/tlbflush.h
  6. 1 0
      arch/arm/kernel/suspend.c
  7. 1 0
      arch/arm/kernel/swp_emulate.c
  8. 1 0
      arch/arm/mm/idmap.c
  9. 1 0
      arch/arm64/include/asm/mmu_context.h
  10. 1 0
      arch/arm64/kernel/traps.c
  11. 2 0
      arch/avr32/include/asm/mmu_context.h
  12. 2 0
      arch/blackfin/include/asm/mmu_context.h
  13. 1 0
      arch/blackfin/kernel/flat.c
  14. 1 0
      arch/blackfin/kernel/process.c
  15. 2 0
      arch/blackfin/mm/sram-alloc.c
  16. 2 0
      arch/cris/arch-v10/mm/tlb.c
  17. 1 0
      arch/cris/arch-v32/mm/tlb.c
  18. 1 1
      arch/cris/include/asm/pgtable.h
  19. 2 0
      arch/cris/mm/tlb.c
  20. 1 0
      arch/h8300/kernel/traps.c
  21. 2 0
      arch/hexagon/include/asm/mmu_context.h
  22. 1 0
      arch/hexagon/kernel/smp.c
  23. 1 0
      arch/ia64/include/asm/mmu_context.h
  24. 1 1
      arch/ia64/include/asm/pgtable.h
  25. 1 0
      arch/ia64/sn/kernel/sn2/sn2_smp.c
  26. 2 0
      arch/m32r/include/asm/mmu_context.h
  27. 1 0
      arch/m68k/include/asm/a.out-core.h
  28. 1 0
      arch/m68k/include/asm/mmu_context.h
  29. 1 0
      arch/metag/include/asm/mmu_context.h
  30. 2 0
      arch/microblaze/include/asm/mmu_context_mm.h
  31. 1 0
      arch/microblaze/mm/pgtable.c
  32. 2 0
      arch/mips/include/asm/elf.h
  33. 2 0
      arch/mips/include/asm/mmu_context.h
  34. 1 1
      arch/mips/kernel/smp.c
  35. 1 0
      arch/mips/math-emu/dsemul.c
  36. 1 0
      arch/mips/mm/ioremap.c
  37. 2 0
      arch/mn10300/include/asm/mmu_context.h
  38. 1 1
      arch/mn10300/kernel/smp.c
  39. 1 1
      arch/mn10300/mm/tlb-smp.c
  40. 2 0
      arch/nios2/include/asm/mmu_context.h
  41. 1 0
      arch/nios2/kernel/process.c
  42. 1 1
      arch/powerpc/kernel/io-workarounds.c
  43. 1 1
      arch/powerpc/kvm/e500_mmu_host.c
  44. 1 0
      arch/powerpc/lib/feature-fixups.c
  45. 1 1
      arch/powerpc/mm/hash_utils_64.c
  46. 2 0
      arch/powerpc/mm/pgtable-book3s64.c
  47. 2 0
      arch/powerpc/mm/pgtable-hash64.c
  48. 1 1
      arch/powerpc/mm/pgtable-radix.c
  49. 2 0
      arch/powerpc/mm/slb.c
  50. 1 1
      arch/s390/include/asm/elf.h
  51. 1 0
      arch/s390/include/asm/mmu_context.h
  52. 1 0
      arch/s390/kernel/processor.c
  53. 2 0
      arch/s390/kvm/gaccess.c
  54. 2 0
      arch/s390/kvm/priv.c
  55. 2 0
      arch/score/include/asm/mmu_context.h
  56. 1 0
      arch/score/kernel/traps.c
  57. 2 0
      arch/sh/include/asm/mmu_context.h
  58. 2 0
      arch/sparc/include/asm/mmu_context_64.h
  59. 3 0
      arch/sparc/include/asm/pgtable_64.h
  60. 1 0
      arch/sparc/kernel/asm-offsets.c
  61. 1 0
      arch/sparc/kernel/traps_32.c
  62. 2 0
      arch/sparc/mm/tsb.c
  63. 2 0
      arch/tile/include/asm/mmu_context.h
  64. 2 0
      arch/um/include/asm/mmu_context.h
  65. 1 1
      arch/um/kernel/exec.c
  66. 1 0
      arch/um/kernel/reboot.c
  67. 2 1
      arch/um/kernel/skas/process.c
  68. 1 0
      arch/x86/entry/vsyscall/vsyscall_64.c
  69. 1 1
      arch/x86/events/core.c
  70. 2 0
      arch/x86/include/asm/a.out-core.h
  71. 2 0
      arch/x86/include/asm/mpx.h
  72. 1 0
      arch/x86/mm/mpx.c
  73. 1 0
      arch/x86/um/syscalls_64.c
  74. 1 1
      arch/x86/xen/mmu.c
  75. 1 0
      arch/xtensa/include/asm/mmu_context.h
  76. 2 0
      drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c
  77. 2 0
      drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c
  78. 1 1
      drivers/infiniband/hw/cxgb3/iwch_provider.c
  79. 1 1
      drivers/infiniband/hw/cxgb4/iw_cxgb4.h
  80. 1 1
      drivers/media/v4l2-core/videobuf-dma-sg.c
  81. 1 1
      fs/binfmt_misc.c
  82. 1 1
      fs/kernfs/file.c
  83. 1 0
      include/drm/drm_mm.h
  84. 1 0
      include/linux/init_task.h
  85. 1 0
      include/linux/sched/mm.h
  86. 1 1
      kernel/sched/debug.c
  87. 1 1
      kernel/sched/fair.c
  88. 1 1
      kernel/signal.c
  89. 1 0
      lib/is_single_threaded.c

+ 1 - 0
arch/alpha/include/asm/a.out-core.h

@@ -15,6 +15,7 @@
 #ifdef __KERNEL__
 
 #include <linux/user.h>
+#include <linux/mm_types.h>
 
 /*
  * Fill in the user structure for an ECOFF core dump.

+ 2 - 0
arch/alpha/include/asm/mmu_context.h

@@ -7,6 +7,8 @@
  * Copyright (C) 1996, Linus Torvalds
  */
 
+#include <linux/mm_types.h>
+
 #include <asm/machvec.h>
 #include <asm/compiler.h>
 #include <asm-generic/mm_hooks.h>

+ 2 - 0
arch/arc/mm/tlb.c

@@ -53,6 +53,8 @@
 
 #include <linux/module.h>
 #include <linux/bug.h>
+#include <linux/mm_types.h>
+
 #include <asm/arcregs.h>
 #include <asm/setup.h>
 #include <asm/mmu_context.h>

+ 2 - 0
arch/arm/include/asm/mmu_context.h

@@ -15,7 +15,9 @@
 
 #include <linux/compiler.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/preempt.h>
+
 #include <asm/cacheflush.h>
 #include <asm/cachetype.h>
 #include <asm/proc-fns.h>

+ 4 - 3
arch/arm/include/asm/tlbflush.h

@@ -10,6 +10,10 @@
 #ifndef _ASMARM_TLBFLUSH_H
 #define _ASMARM_TLBFLUSH_H
 
+#ifndef __ASSEMBLY__
+# include <linux/mm_types.h>
+#endif
+
 #ifdef CONFIG_MMU
 
 #include <asm/glue.h>
@@ -644,9 +648,6 @@ static inline void update_mmu_cache(struct vm_area_struct *vma,
 #elif defined(CONFIG_SMP)	/* !CONFIG_MMU */
 
 #ifndef __ASSEMBLY__
-
-#include <linux/mm_types.h>
-
 static inline void local_flush_tlb_all(void)									{ }
 static inline void local_flush_tlb_mm(struct mm_struct *mm)							{ }
 static inline void local_flush_tlb_page(struct vm_area_struct *vma, unsigned long uaddr)			{ }

+ 1 - 0
arch/arm/kernel/suspend.c

@@ -1,5 +1,6 @@
 #include <linux/init.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
 
 #include <asm/cacheflush.h>
 #include <asm/idmap.h>

+ 1 - 0
arch/arm/kernel/swp_emulate.c

@@ -23,6 +23,7 @@
 #include <linux/proc_fs.h>
 #include <linux/seq_file.h>
 #include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/syscalls.h>
 #include <linux/perf_event.h>
 

+ 1 - 0
arch/arm/mm/idmap.c

@@ -1,6 +1,7 @@
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
 
 #include <asm/cputype.h>
 #include <asm/idmap.h>

+ 1 - 0
arch/arm64/include/asm/mmu_context.h

@@ -26,6 +26,7 @@
 #include <linux/compiler.h>
 #include <linux/sched.h>
 #include <linux/sched/hotplug.h>
+#include <linux/mm_types.h>
 
 #include <asm/cacheflush.h>
 #include <asm/cpufeature.h>

+ 1 - 0
arch/arm64/kernel/traps.c

@@ -33,6 +33,7 @@
 #include <linux/sched/debug.h>
 #include <linux/sched/task_stack.h>
 #include <linux/syscalls.h>
+#include <linux/mm_types.h>
 
 #include <asm/atomic.h>
 #include <asm/bug.h>

+ 2 - 0
arch/avr32/include/asm/mmu_context.h

@@ -12,6 +12,8 @@
 #ifndef __ASM_AVR32_MMU_CONTEXT_H
 #define __ASM_AVR32_MMU_CONTEXT_H
 
+#include <linux/mm_types.h>
+
 #include <asm/tlbflush.h>
 #include <asm/sysreg.h>
 #include <asm-generic/mm_hooks.h>

+ 2 - 0
arch/blackfin/include/asm/mmu_context.h

@@ -9,6 +9,8 @@
 
 #include <linux/slab.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
+
 #include <asm/setup.h>
 #include <asm/page.h>
 #include <asm/pgalloc.h>

+ 1 - 0
arch/blackfin/kernel/flat.c

@@ -6,6 +6,7 @@
 
 #include <linux/module.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/flat.h>
 
 #define FLAT_BFIN_RELOC_TYPE_16_BIT 0

+ 1 - 0
arch/blackfin/kernel/process.c

@@ -15,6 +15,7 @@
 #include <linux/sched/debug.h>
 #include <linux/sched/task.h>
 #include <linux/sched/task_stack.h>
+#include <linux/mm_types.h>
 #include <linux/tick.h>
 #include <linux/fs.h>
 #include <linux/err.h>

+ 2 - 0
arch/blackfin/mm/sram-alloc.c

@@ -19,6 +19,8 @@
 #include <linux/spinlock.h>
 #include <linux/rtc.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
+
 #include <asm/blackfin.h>
 #include <asm/mem_map.h>
 #include "blackfin_sram.h"

+ 2 - 0
arch/cris/arch-v10/mm/tlb.c

@@ -10,6 +10,8 @@
  *
  */
 
+#include <linux/mm_types.h>
+
 #include <asm/tlb.h>
 #include <asm/mmu_context.h>
 #include <arch/svinto.h>

+ 1 - 0
arch/cris/arch-v32/mm/tlb.c

@@ -6,6 +6,7 @@
  * Authors:   Bjorn Wesen <bjornw@axis.com>
  *            Tobias Anderberg <tobiasa@axis.com>, CRISv32 port.
  */
+#include <linux/mm_types.h>
 
 #include <asm/tlb.h>
 #include <asm/mmu_context.h>

+ 1 - 1
arch/cris/include/asm/pgtable.h

@@ -9,7 +9,7 @@
 #include <asm-generic/pgtable-nopmd.h>
 
 #ifndef __ASSEMBLY__
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <asm/mmu.h>
 #endif
 #include <arch/pgtable.h>

+ 2 - 0
arch/cris/mm/tlb.c

@@ -9,6 +9,8 @@
 
 #include <linux/init.h>
 #include <linux/kernel.h>
+#include <linux/mm_types.h>
+
 #include <asm/tlb.h>
 
 #define D(x)

+ 1 - 0
arch/h8300/kernel/traps.c

@@ -17,6 +17,7 @@
 #include <linux/types.h>
 #include <linux/sched.h>
 #include <linux/sched/debug.h>
+#include <linux/mm_types.h>
 #include <linux/kernel.h>
 #include <linux/errno.h>
 #include <linux/init.h>

+ 2 - 0
arch/hexagon/include/asm/mmu_context.h

@@ -21,6 +21,8 @@
 #ifndef _ASM_MMU_CONTEXT_H
 #define _ASM_MMU_CONTEXT_H
 
+#include <linux/mm_types.h>
+
 #include <asm/setup.h>
 #include <asm/page.h>
 #include <asm/pgalloc.h>

+ 1 - 0
arch/hexagon/kernel/smp.c

@@ -29,6 +29,7 @@
 #include <linux/smp.h>
 #include <linux/spinlock.h>
 #include <linux/cpu.h>
+#include <linux/mm_types.h>
 
 #include <asm/time.h>    /*  timer_interrupt  */
 #include <asm/hexagon_vm.h>

+ 1 - 0
arch/ia64/include/asm/mmu_context.h

@@ -26,6 +26,7 @@
 #include <linux/compiler.h>
 #include <linux/percpu.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/spinlock.h>
 
 #include <asm/processor.h>

+ 1 - 1
arch/ia64/include/asm/pgtable.h

@@ -147,7 +147,7 @@
 
 # ifndef __ASSEMBLY__
 
-#include <linux/sched.h>	/* for mm_struct */
+#include <linux/sched/mm.h>	/* for mm_struct */
 #include <linux/bitops.h>
 #include <asm/cacheflush.h>
 #include <asm/mmu_context.h>

+ 1 - 0
arch/ia64/sn/kernel/sn2/sn2_smp.c

@@ -13,6 +13,7 @@
 #include <linux/spinlock.h>
 #include <linux/threads.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/smp.h>
 #include <linux/interrupt.h>
 #include <linux/irq.h>

+ 2 - 0
arch/m32r/include/asm/mmu_context.h

@@ -12,6 +12,8 @@
 #ifndef __ASSEMBLY__
 
 #include <linux/atomic.h>
+#include <linux/mm_types.h>
+
 #include <asm/pgalloc.h>
 #include <asm/mmu.h>
 #include <asm/tlbflush.h>

+ 1 - 0
arch/m68k/include/asm/a.out-core.h

@@ -16,6 +16,7 @@
 
 #include <linux/user.h>
 #include <linux/elfcore.h>
+#include <linux/mm_types.h>
 
 /*
  * fill in the user structure for an a.out core dump

+ 1 - 0
arch/m68k/include/asm/mmu_context.h

@@ -2,6 +2,7 @@
 #define __M68K_MMU_CONTEXT_H
 
 #include <asm-generic/mm_hooks.h>
+#include <linux/mm_types.h>
 
 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
 {

+ 1 - 0
arch/metag/include/asm/mmu_context.h

@@ -9,6 +9,7 @@
 #include <asm/cacheflush.h>
 
 #include <linux/io.h>
+#include <linux/mm_types.h>
 
 static inline void enter_lazy_tlb(struct mm_struct *mm,
 				  struct task_struct *tsk)

+ 2 - 0
arch/microblaze/include/asm/mmu_context_mm.h

@@ -12,6 +12,8 @@
 #define _ASM_MICROBLAZE_MMU_CONTEXT_H
 
 #include <linux/atomic.h>
+#include <linux/mm_types.h>
+
 #include <asm/bitops.h>
 #include <asm/mmu.h>
 #include <asm-generic/mm_hooks.h>

+ 1 - 0
arch/microblaze/mm/pgtable.c

@@ -31,6 +31,7 @@
 #include <linux/types.h>
 #include <linux/vmalloc.h>
 #include <linux/init.h>
+#include <linux/mm_types.h>
 
 #include <asm/pgtable.h>
 #include <asm/pgalloc.h>

+ 2 - 0
arch/mips/include/asm/elf.h

@@ -10,6 +10,8 @@
 
 #include <linux/auxvec.h>
 #include <linux/fs.h>
+#include <linux/mm_types.h>
+
 #include <uapi/linux/elf.h>
 
 #include <asm/current.h>

+ 2 - 0
arch/mips/include/asm/mmu_context.h

@@ -13,8 +13,10 @@
 
 #include <linux/errno.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/smp.h>
 #include <linux/slab.h>
+
 #include <asm/cacheflush.h>
 #include <asm/dsemul.h>
 #include <asm/hazards.h>

+ 1 - 1
arch/mips/kernel/smp.c

@@ -28,7 +28,7 @@
 #include <linux/export.h>
 #include <linux/time.h>
 #include <linux/timex.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/cpumask.h>
 #include <linux/cpu.h>
 #include <linux/err.h>

+ 1 - 0
arch/mips/math-emu/dsemul.c

@@ -1,5 +1,6 @@
 #include <linux/err.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
 
 #include <asm/branch.h>
 #include <asm/cacheflush.h>

+ 1 - 0
arch/mips/mm/ioremap.c

@@ -12,6 +12,7 @@
 #include <linux/sched.h>
 #include <linux/slab.h>
 #include <linux/vmalloc.h>
+#include <linux/mm_types.h>
 #include <asm/cacheflush.h>
 #include <asm/io.h>
 #include <asm/tlbflush.h>

+ 2 - 0
arch/mn10300/include/asm/mmu_context.h

@@ -23,6 +23,8 @@
 #define _ASM_MMU_CONTEXT_H
 
 #include <linux/atomic.h>
+#include <linux/mm_types.h>
+
 #include <asm/pgalloc.h>
 #include <asm/tlbflush.h>
 #include <asm-generic/mm_hooks.h>

+ 1 - 1
arch/mn10300/kernel/smp.c

@@ -21,7 +21,7 @@
 #include <linux/err.h>
 #include <linux/kernel.h>
 #include <linux/delay.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/task.h>
 #include <linux/profile.h>
 #include <linux/smp.h>

+ 1 - 1
arch/mn10300/mm/tlb-smp.c

@@ -20,7 +20,7 @@
 #include <linux/err.h>
 #include <linux/kernel.h>
 #include <linux/delay.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/profile.h>
 #include <linux/smp.h>
 #include <asm/tlbflush.h>

+ 2 - 0
arch/nios2/include/asm/mmu_context.h

@@ -13,6 +13,8 @@
 #ifndef _ASM_NIOS2_MMU_CONTEXT_H
 #define _ASM_NIOS2_MMU_CONTEXT_H
 
+#include <linux/mm_types.h>
+
 #include <asm-generic/mm_hooks.h>
 
 extern void mmu_context_init(void);

+ 1 - 0
arch/nios2/kernel/process.c

@@ -17,6 +17,7 @@
 #include <linux/sched/debug.h>
 #include <linux/sched/task.h>
 #include <linux/sched/task_stack.h>
+#include <linux/mm_types.h>
 #include <linux/tick.h>
 #include <linux/uaccess.h>
 

+ 1 - 1
arch/powerpc/kernel/io-workarounds.c

@@ -12,7 +12,7 @@
 #undef DEBUG
 
 #include <linux/kernel.h>
-#include <linux/sched.h>	/* for init_mm */
+#include <linux/sched/mm.h>	/* for init_mm */
 
 #include <asm/io.h>
 #include <asm/machdep.h>

+ 1 - 1
arch/powerpc/kvm/e500_mmu_host.c

@@ -25,7 +25,7 @@
 #include <linux/highmem.h>
 #include <linux/log2.h>
 #include <linux/uaccess.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/rwsem.h>
 #include <linux/vmalloc.h>
 #include <linux/hugetlb.h>

+ 1 - 0
arch/powerpc/lib/feature-fixups.c

@@ -17,6 +17,7 @@
 #include <linux/kernel.h>
 #include <linux/string.h>
 #include <linux/init.h>
+#include <linux/sched/mm.h>
 #include <asm/cputable.h>
 #include <asm/code-patching.h>
 #include <asm/page.h>

+ 1 - 1
arch/powerpc/mm/hash_utils_64.c

@@ -23,7 +23,7 @@
 
 #include <linux/spinlock.h>
 #include <linux/errno.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/proc_fs.h>
 #include <linux/stat.h>
 #include <linux/sysctl.h>

+ 2 - 0
arch/powerpc/mm/pgtable-book3s64.c

@@ -8,6 +8,8 @@
  */
 
 #include <linux/sched.h>
+#include <linux/mm_types.h>
+
 #include <asm/pgalloc.h>
 #include <asm/tlb.h>
 

+ 2 - 0
arch/powerpc/mm/pgtable-hash64.c

@@ -10,6 +10,8 @@
  */
 
 #include <linux/sched.h>
+#include <linux/mm_types.h>
+
 #include <asm/pgalloc.h>
 #include <asm/tlb.h>
 

+ 1 - 1
arch/powerpc/mm/pgtable-radix.c

@@ -8,7 +8,7 @@
  * as published by the Free Software Foundation; either version
  * 2 of the License, or (at your option) any later version.
  */
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/memblock.h>
 #include <linux/of_fdt.h>
 

+ 2 - 0
arch/powerpc/mm/slb.c

@@ -22,6 +22,8 @@
 #include <asm/cacheflush.h>
 #include <asm/smp.h>
 #include <linux/compiler.h>
+#include <linux/mm_types.h>
+
 #include <asm/udbg.h>
 #include <asm/code-patching.h>
 

+ 1 - 1
arch/s390/include/asm/elf.h

@@ -132,7 +132,7 @@ typedef s390_fp_regs compat_elf_fpregset_t;
 typedef s390_compat_regs compat_elf_gregset_t;
 
 #include <linux/compat.h>
-#include <linux/sched.h>	/* for task_struct */
+#include <linux/sched/mm.h>	/* for task_struct */
 #include <asm/mmu_context.h>
 
 #include <asm/vdso.h>

+ 1 - 0
arch/s390/include/asm/mmu_context.h

@@ -9,6 +9,7 @@
 
 #include <asm/pgalloc.h>
 #include <linux/uaccess.h>
+#include <linux/mm_types.h>
 #include <asm/tlbflush.h>
 #include <asm/ctl_reg.h>
 

+ 1 - 0
arch/s390/kernel/processor.c

@@ -10,6 +10,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/seq_file.h>
+#include <linux/mm_types.h>
 #include <linux/delay.h>
 #include <linux/cpu.h>
 #include <asm/diag.h>

+ 2 - 0
arch/s390/kvm/gaccess.c

@@ -6,7 +6,9 @@
  */
 
 #include <linux/vmalloc.h>
+#include <linux/mm_types.h>
 #include <linux/err.h>
+
 #include <asm/pgtable.h>
 #include <asm/gmap.h>
 #include "kvm-s390.h"

+ 2 - 0
arch/s390/kvm/priv.c

@@ -15,6 +15,8 @@
 #include <linux/gfp.h>
 #include <linux/errno.h>
 #include <linux/compat.h>
+#include <linux/mm_types.h>
+
 #include <asm/asm-offsets.h>
 #include <asm/facility.h>
 #include <asm/current.h>

+ 2 - 0
arch/score/include/asm/mmu_context.h

@@ -3,7 +3,9 @@
 
 #include <linux/errno.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/slab.h>
+
 #include <asm-generic/mm_hooks.h>
 
 #include <asm/cacheflush.h>

+ 1 - 0
arch/score/kernel/traps.c

@@ -26,6 +26,7 @@
 #include <linux/extable.h>
 #include <linux/sched/signal.h>
 #include <linux/sched/debug.h>
+#include <linux/mm_types.h>
 
 #include <asm/cacheflush.h>
 #include <asm/irq.h>

+ 2 - 0
arch/sh/include/asm/mmu_context.h

@@ -11,6 +11,8 @@
 #include <cpu/mmu_context.h>
 #include <asm/tlbflush.h>
 #include <linux/uaccess.h>
+#include <linux/mm_types.h>
+
 #include <asm/io.h>
 #include <asm-generic/mm_hooks.h>
 

+ 2 - 0
arch/sparc/include/asm/mmu_context_64.h

@@ -6,6 +6,8 @@
 #ifndef __ASSEMBLY__
 
 #include <linux/spinlock.h>
+#include <linux/mm_types.h>
+
 #include <asm/spitfire.h>
 #include <asm-generic/mm_hooks.h>
 

+ 3 - 0
arch/sparc/include/asm/pgtable_64.h

@@ -878,6 +878,9 @@ static inline unsigned long pud_pfn(pud_t pud)
 #define pte_offset_map			pte_index
 #define pte_unmap(pte)			do { } while (0)
 
+/* We cannot include <linux/mm_types.h> at this point yet: */
+extern struct mm_struct init_mm;
+
 /* Actual page table PTE updates.  */
 void tlb_batch_add(struct mm_struct *mm, unsigned long vaddr,
 		   pte_t *ptep, pte_t orig, int fullmm,

+ 1 - 0
arch/sparc/kernel/asm-offsets.c

@@ -11,6 +11,7 @@
  */
 
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 // #include <linux/mm.h>
 #include <linux/kbuild.h>
 

+ 1 - 0
arch/sparc/kernel/traps_32.c

@@ -11,6 +11,7 @@
 
 #include <linux/sched.h>  /* for jiffies */
 #include <linux/sched/debug.h>
+#include <linux/mm_types.h>
 #include <linux/kernel.h>
 #include <linux/signal.h>
 #include <linux/smp.h>

+ 2 - 0
arch/sparc/mm/tsb.c

@@ -6,6 +6,8 @@
 #include <linux/kernel.h>
 #include <linux/preempt.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
+
 #include <asm/page.h>
 #include <asm/pgtable.h>
 #include <asm/mmu_context.h>

+ 2 - 0
arch/tile/include/asm/mmu_context.h

@@ -16,6 +16,8 @@
 #define _ASM_TILE_MMU_CONTEXT_H
 
 #include <linux/smp.h>
+#include <linux/mm_types.h>
+
 #include <asm/setup.h>
 #include <asm/page.h>
 #include <asm/pgalloc.h>

+ 2 - 0
arch/um/include/asm/mmu_context.h

@@ -7,6 +7,8 @@
 #define __UM_MMU_CONTEXT_H
 
 #include <linux/sched.h>
+#include <linux/mm_types.h>
+
 #include <asm/mmu.h>
 
 extern void uml_setup_stubs(struct mm_struct *mm);

+ 1 - 1
arch/um/kernel/exec.c

@@ -7,7 +7,7 @@
 #include <linux/module.h>
 #include <linux/fs.h>
 #include <linux/ptrace.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/task.h>
 #include <linux/sched/task_stack.h>
 #include <linux/slab.h>

+ 1 - 0
arch/um/kernel/reboot.c

@@ -5,6 +5,7 @@
 
 #include <linux/sched/signal.h>
 #include <linux/sched/task.h>
+#include <linux/sched/mm.h>
 #include <linux/spinlock.h>
 #include <linux/slab.h>
 #include <linux/oom.h>

+ 2 - 1
arch/um/kernel/skas/process.c

@@ -4,8 +4,9 @@
  */
 
 #include <linux/init.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/task_stack.h>
+
 #include <as-layout.h>
 #include <kern.h>
 #include <os.h>

+ 1 - 0
arch/x86/entry/vsyscall/vsyscall_64.c

@@ -28,6 +28,7 @@
 #include <linux/kernel.h>
 #include <linux/timer.h>
 #include <linux/sched/signal.h>
+#include <linux/mm_types.h>
 #include <linux/syscalls.h>
 #include <linux/ratelimit.h>
 

+ 1 - 1
arch/x86/events/core.c

@@ -20,7 +20,7 @@
 #include <linux/export.h>
 #include <linux/init.h>
 #include <linux/kdebug.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/clock.h>
 #include <linux/uaccess.h>
 #include <linux/slab.h>

+ 2 - 0
arch/x86/include/asm/a.out-core.h

@@ -17,6 +17,8 @@
 
 #include <linux/user.h>
 #include <linux/elfcore.h>
+#include <linux/mm_types.h>
+
 #include <asm/debugreg.h>
 
 /*

+ 2 - 0
arch/x86/include/asm/mpx.h

@@ -2,6 +2,8 @@
 #define _ASM_X86_MPX_H
 
 #include <linux/types.h>
+#include <linux/mm_types.h>
+
 #include <asm/ptrace.h>
 #include <asm/insn.h>
 

+ 1 - 0
arch/x86/mm/mpx.c

@@ -7,6 +7,7 @@
  */
 #include <linux/kernel.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
 #include <linux/syscalls.h>
 #include <linux/sched/sysctl.h>
 

+ 1 - 0
arch/x86/um/syscalls_64.c

@@ -6,6 +6,7 @@
  */
 
 #include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/uaccess.h>
 #include <asm/prctl.h> /* XXX This should get the constants from libc */
 #include <os.h>

+ 1 - 1
arch/x86/xen/mmu.c

@@ -38,7 +38,7 @@
  *
  * Jeremy Fitzhardinge <jeremy@xensource.com>, XenSource Inc, 2007
  */
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/highmem.h>
 #include <linux/debugfs.h>
 #include <linux/bug.h>

+ 1 - 0
arch/xtensa/include/asm/mmu_context.h

@@ -17,6 +17,7 @@
 
 #include <linux/stringify.h>
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 
 #include <asm/vectors.h>
 

+ 2 - 0
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c

@@ -23,6 +23,8 @@
 
 #include <linux/printk.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
+
 #include "kfd_priv.h"
 #include "kfd_mqd_manager.h"
 #include "cik_regs.h"

+ 2 - 0
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c

@@ -23,6 +23,8 @@
 
 #include <linux/printk.h>
 #include <linux/slab.h>
+#include <linux/mm_types.h>
+
 #include "kfd_priv.h"
 #include "kfd_mqd_manager.h"
 #include "vi_structs.h"

+ 1 - 1
drivers/infiniband/hw/cxgb3/iwch_provider.c

@@ -37,7 +37,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/list.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/spinlock.h>
 #include <linux/ethtool.h>
 #include <linux/rtnetlink.h>

+ 1 - 1
drivers/infiniband/hw/cxgb4/iw_cxgb4.h

@@ -37,7 +37,7 @@
 #include <linux/idr.h>
 #include <linux/completion.h>
 #include <linux/netdevice.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/pci.h>
 #include <linux/dma-mapping.h>
 #include <linux/inet.h>

+ 1 - 1
drivers/media/v4l2-core/videobuf-dma-sg.c

@@ -21,7 +21,7 @@
 #include <linux/init.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/slab.h>
 #include <linux/interrupt.h>
 

+ 1 - 1
fs/binfmt_misc.c

@@ -12,7 +12,7 @@
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/init.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/magic.h>
 #include <linux/binfmts.h>
 #include <linux/slab.h>

+ 1 - 1
fs/kernfs/file.c

@@ -13,7 +13,7 @@
 #include <linux/slab.h>
 #include <linux/poll.h>
 #include <linux/pagemap.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/fsnotify.h>
 
 #include "kernfs-internal.h"

+ 1 - 0
include/drm/drm_mm.h

@@ -40,6 +40,7 @@
 #include <linux/bug.h>
 #include <linux/rbtree.h>
 #include <linux/kernel.h>
+#include <linux/mm_types.h>
 #include <linux/list.h>
 #include <linux/spinlock.h>
 #ifdef CONFIG_DRM_DEBUG_MM

+ 1 - 0
include/linux/init_task.h

@@ -15,6 +15,7 @@
 #include <linux/sched/autogroup.h>
 #include <net/net_namespace.h>
 #include <linux/sched/rt.h>
+#include <linux/mm_types.h>
 
 #include <asm/thread_info.h>
 

+ 1 - 0
include/linux/sched/mm.h

@@ -2,6 +2,7 @@
 #define _LINUX_SCHED_MM_H
 
 #include <linux/sched.h>
+#include <linux/mm_types.h>
 #include <linux/gfp.h>
 
 #endif /* _LINUX_SCHED_MM_H */

+ 1 - 1
kernel/sched/debug.c

@@ -11,7 +11,7 @@
  */
 
 #include <linux/proc_fs.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/seq_file.h>
 #include <linux/kallsyms.h>
 #include <linux/utsname.h>

+ 1 - 1
kernel/sched/fair.c

@@ -20,7 +20,7 @@
  *  Copyright (C) 2007 Red Hat, Inc., Peter Zijlstra
  */
 
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/topology.h>
 
 #include <linux/latencytop.h>

+ 1 - 1
kernel/signal.c

@@ -13,7 +13,7 @@
 #include <linux/slab.h>
 #include <linux/export.h>
 #include <linux/init.h>
-#include <linux/sched.h>
+#include <linux/sched/mm.h>
 #include <linux/sched/user.h>
 #include <linux/sched/debug.h>
 #include <linux/sched/task.h>

+ 1 - 0
lib/is_single_threaded.c

@@ -10,6 +10,7 @@
  * 2 of the Licence, or (at your option) any later version.
  */
 #include <linux/sched/signal.h>
+#include <linux/sched/mm.h>
 
 /*
  * Returns true if the task does not share ->mm with another thread/process.