summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2017-02-08 12:51:29 -0500
committerIngo Molnar <mingo@kernel.org>2017-03-02 02:42:28 -0500
commit6e84f31522f931027bf695752087ece278c10d3f (patch)
tree77c09a0bb2878e9725539f310f43dd38137c5d97
parent4eb5aaa3af8a54e5e9bac90e2b42bbab1f1ee5a3 (diff)
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/mm.h>
We are going to split <linux/sched/mm.h> out of <linux/sched.h>, which will have to be picked up from other headers and a couple of .c files. Create a trivial placeholder <linux/sched/mm.h> file that just maps to <linux/sched.h> to make this patch obviously correct and bisectable. The APIs that are going to be moved first are: mm_alloc() __mmdrop() mmdrop() mmdrop_async_fn() mmdrop_async() mmget_not_zero() mmput() mmput_async() get_task_mm() mm_access() mm_release() Include the new header in the files that are going to need it. 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>
-rw-r--r--arch/arc/include/asm/mmu_context.h1
-rw-r--r--arch/arc/kernel/troubleshoot.c2
-rw-r--r--arch/arm/mach-rpc/ecard.c1
-rw-r--r--arch/frv/mm/mmu-context.c1
-rw-r--r--arch/m68k/sun3/mmu_emu.c1
-rw-r--r--arch/powerpc/platforms/cell/spufs/context.c2
-rw-r--r--drivers/android/binder.c1
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_process.c1
-rw-r--r--drivers/gpu/drm/etnaviv/etnaviv_gem.c1
-rw-r--r--drivers/gpu/drm/i915/i915_gem_userptr.c1
-rw-r--r--drivers/infiniband/core/umem.c1
-rw-r--r--drivers/infiniband/core/umem_odp.c1
-rw-r--r--drivers/infiniband/hw/hfi1/file_ops.c1
-rw-r--r--drivers/infiniband/hw/mlx4/main.c2
-rw-r--r--drivers/infiniband/hw/mlx5/main.c1
-rw-r--r--drivers/infiniband/hw/usnic/usnic_uiom.c1
-rw-r--r--drivers/iommu/amd_iommu_v2.c1
-rw-r--r--drivers/iommu/intel-svm.c1
-rw-r--r--drivers/lguest/lguest_user.c1
-rw-r--r--drivers/misc/cxl/fault.c1
-rw-r--r--drivers/misc/mic/scif/scif_rma.c2
-rw-r--r--drivers/oprofile/buffer_sync.c1
-rw-r--r--drivers/vfio/vfio_iommu_spapr_tce.c2
-rw-r--r--drivers/vfio/vfio_iommu_type1.c1
-rw-r--r--drivers/vhost/vhost.c1
-rw-r--r--drivers/xen/gntdev.c1
-rw-r--r--fs/exec.c1
-rw-r--r--fs/proc/array.c1
-rw-r--r--fs/proc/base.c1
-rw-r--r--fs/proc/task_mmu.c1
-rw-r--r--fs/proc/task_nommu.c2
-rw-r--r--fs/userfaultfd.c1
-rw-r--r--include/linux/sched/mm.h6
-rw-r--r--kernel/cgroup/cpuset.c1
-rw-r--r--kernel/events/core.c1
-rw-r--r--kernel/events/uprobes.c1
-rw-r--r--kernel/exit.c1
-rw-r--r--kernel/fork.c1
-rw-r--r--kernel/futex.c1
-rw-r--r--kernel/ptrace.c1
-rw-r--r--kernel/sched/sched.h1
-rw-r--r--kernel/sys.c1
-rw-r--r--kernel/trace/trace_output.c1
-rw-r--r--kernel/tsacct.c1
-rw-r--r--mm/khugepaged.c1
-rw-r--r--mm/ksm.c1
-rw-r--r--mm/memcontrol.c1
-rw-r--r--mm/memory.c1
-rw-r--r--mm/mempolicy.c1
-rw-r--r--mm/migrate.c1
-rw-r--r--mm/mmu_context.c1
-rw-r--r--mm/mmu_notifier.c1
-rw-r--r--mm/nommu.c1
-rw-r--r--mm/oom_kill.c1
-rw-r--r--mm/process_vm_access.c1
-rw-r--r--mm/rmap.c1
-rw-r--r--mm/swapfile.c1
-rw-r--r--mm/util.c1
-rw-r--r--virt/kvm/async_pf.c1
-rw-r--r--virt/kvm/kvm_main.c1
60 files changed, 71 insertions, 0 deletions
diff --git a/arch/arc/include/asm/mmu_context.h b/arch/arc/include/asm/mmu_context.h
index b0b87f2447f5..64b5ebae1ae8 100644
--- a/arch/arc/include/asm/mmu_context.h
+++ b/arch/arc/include/asm/mmu_context.h
@@ -20,6 +20,7 @@
20 20
21#include <asm/arcregs.h> 21#include <asm/arcregs.h>
22#include <asm/tlb.h> 22#include <asm/tlb.h>
23#include <linux/sched/mm.h>
23 24
24#include <asm-generic/mm_hooks.h> 25#include <asm-generic/mm_hooks.h>
25 26
diff --git a/arch/arc/kernel/troubleshoot.c b/arch/arc/kernel/troubleshoot.c
index 82f9bc819f4a..0c48907f56a9 100644
--- a/arch/arc/kernel/troubleshoot.c
+++ b/arch/arc/kernel/troubleshoot.c
@@ -13,6 +13,8 @@
13#include <linux/fs_struct.h> 13#include <linux/fs_struct.h>
14#include <linux/proc_fs.h> 14#include <linux/proc_fs.h>
15#include <linux/file.h> 15#include <linux/file.h>
16#include <linux/sched/mm.h>
17
16#include <asm/arcregs.h> 18#include <asm/arcregs.h>
17#include <asm/irqflags.h> 19#include <asm/irqflags.h>
18 20
diff --git a/arch/arm/mach-rpc/ecard.c b/arch/arm/mach-rpc/ecard.c
index dc67a7fb3831..6b279d037774 100644
--- a/arch/arm/mach-rpc/ecard.c
+++ b/arch/arm/mach-rpc/ecard.c
@@ -31,6 +31,7 @@
31#include <linux/kernel.h> 31#include <linux/kernel.h>
32#include <linux/types.h> 32#include <linux/types.h>
33#include <linux/sched.h> 33#include <linux/sched.h>
34#include <linux/sched/mm.h>
34#include <linux/interrupt.h> 35#include <linux/interrupt.h>
35#include <linux/completion.h> 36#include <linux/completion.h>
36#include <linux/reboot.h> 37#include <linux/reboot.h>
diff --git a/arch/frv/mm/mmu-context.c b/arch/frv/mm/mmu-context.c
index 3473bde77f56..4031289bf2ec 100644
--- a/arch/frv/mm/mmu-context.c
+++ b/arch/frv/mm/mmu-context.c
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/sched.h> 12#include <linux/sched.h>
13#include <linux/sched/mm.h>
13#include <linux/mm.h> 14#include <linux/mm.h>
14#include <asm/tlbflush.h> 15#include <asm/tlbflush.h>
15 16
diff --git a/arch/m68k/sun3/mmu_emu.c b/arch/m68k/sun3/mmu_emu.c
index e9d7fbe4d5ae..7fdc61525e0b 100644
--- a/arch/m68k/sun3/mmu_emu.c
+++ b/arch/m68k/sun3/mmu_emu.c
@@ -15,6 +15,7 @@
15#include <linux/bootmem.h> 15#include <linux/bootmem.h>
16#include <linux/bitops.h> 16#include <linux/bitops.h>
17#include <linux/module.h> 17#include <linux/module.h>
18#include <linux/sched/mm.h>
18 19
19#include <asm/setup.h> 20#include <asm/setup.h>
20#include <asm/traps.h> 21#include <asm/traps.h>
diff --git a/arch/powerpc/platforms/cell/spufs/context.c b/arch/powerpc/platforms/cell/spufs/context.c
index 3b4152faeb1f..b500b17254a0 100644
--- a/arch/powerpc/platforms/cell/spufs/context.c
+++ b/arch/powerpc/platforms/cell/spufs/context.c
@@ -25,6 +25,8 @@
25#include <linux/slab.h> 25#include <linux/slab.h>
26#include <linux/atomic.h> 26#include <linux/atomic.h>
27#include <linux/sched.h> 27#include <linux/sched.h>
28#include <linux/sched/mm.h>
29
28#include <asm/spu.h> 30#include <asm/spu.h>
29#include <asm/spu_csa.h> 31#include <asm/spu_csa.h>
30#include "spufs.h" 32#include "spufs.h"
diff --git a/drivers/android/binder.c b/drivers/android/binder.c
index 2bbcdc6fdfee..e33e7fbe870b 100644
--- a/drivers/android/binder.c
+++ b/drivers/android/binder.c
@@ -32,6 +32,7 @@
32#include <linux/debugfs.h> 32#include <linux/debugfs.h>
33#include <linux/rbtree.h> 33#include <linux/rbtree.h>
34#include <linux/sched.h> 34#include <linux/sched.h>
35#include <linux/sched/mm.h>
35#include <linux/seq_file.h> 36#include <linux/seq_file.h>
36#include <linux/uaccess.h> 37#include <linux/uaccess.h>
37#include <linux/vmalloc.h> 38#include <linux/vmalloc.h>
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
index ca5f2aa7232d..84d1ffd1eef9 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
@@ -23,6 +23,7 @@
23#include <linux/mutex.h> 23#include <linux/mutex.h>
24#include <linux/log2.h> 24#include <linux/log2.h>
25#include <linux/sched.h> 25#include <linux/sched.h>
26#include <linux/sched/mm.h>
26#include <linux/slab.h> 27#include <linux/slab.h>
27#include <linux/amd-iommu.h> 28#include <linux/amd-iommu.h>
28#include <linux/notifier.h> 29#include <linux/notifier.h>
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem.c b/drivers/gpu/drm/etnaviv/etnaviv_gem.c
index e78f1406885d..ae2882b64b82 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_gem.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_gem.c
@@ -16,6 +16,7 @@
16 16
17#include <linux/spinlock.h> 17#include <linux/spinlock.h>
18#include <linux/shmem_fs.h> 18#include <linux/shmem_fs.h>
19#include <linux/sched/mm.h>
19 20
20#include "etnaviv_drv.h" 21#include "etnaviv_drv.h"
21#include "etnaviv_gem.h" 22#include "etnaviv_gem.h"
diff --git a/drivers/gpu/drm/i915/i915_gem_userptr.c b/drivers/gpu/drm/i915/i915_gem_userptr.c
index 0115989e324a..22b46398831e 100644
--- a/drivers/gpu/drm/i915/i915_gem_userptr.c
+++ b/drivers/gpu/drm/i915/i915_gem_userptr.c
@@ -31,6 +31,7 @@
31#include <linux/mmu_notifier.h> 31#include <linux/mmu_notifier.h>
32#include <linux/mempolicy.h> 32#include <linux/mempolicy.h>
33#include <linux/swap.h> 33#include <linux/swap.h>
34#include <linux/sched/mm.h>
34 35
35struct i915_mm_struct { 36struct i915_mm_struct {
36 struct mm_struct *mm; 37 struct mm_struct *mm;
diff --git a/drivers/infiniband/core/umem.c b/drivers/infiniband/core/umem.c
index 446b56a5260b..d525b1a2986a 100644
--- a/drivers/infiniband/core/umem.c
+++ b/drivers/infiniband/core/umem.c
@@ -35,6 +35,7 @@
35#include <linux/mm.h> 35#include <linux/mm.h>
36#include <linux/dma-mapping.h> 36#include <linux/dma-mapping.h>
37#include <linux/sched.h> 37#include <linux/sched.h>
38#include <linux/sched/mm.h>
38#include <linux/export.h> 39#include <linux/export.h>
39#include <linux/hugetlb.h> 40#include <linux/hugetlb.h>
40#include <linux/slab.h> 41#include <linux/slab.h>
diff --git a/drivers/infiniband/core/umem_odp.c b/drivers/infiniband/core/umem_odp.c
index f2fc0431512d..7279f259494f 100644
--- a/drivers/infiniband/core/umem_odp.c
+++ b/drivers/infiniband/core/umem_odp.c
@@ -32,6 +32,7 @@
32 32
33#include <linux/types.h> 33#include <linux/types.h>
34#include <linux/sched.h> 34#include <linux/sched.h>
35#include <linux/sched/mm.h>
35#include <linux/pid.h> 36#include <linux/pid.h>
36#include <linux/slab.h> 37#include <linux/slab.h>
37#include <linux/export.h> 38#include <linux/export.h>
diff --git a/drivers/infiniband/hw/hfi1/file_ops.c b/drivers/infiniband/hw/hfi1/file_ops.c
index 3b19c16a9e45..f78c739b330a 100644
--- a/drivers/infiniband/hw/hfi1/file_ops.c
+++ b/drivers/infiniband/hw/hfi1/file_ops.c
@@ -48,6 +48,7 @@
48#include <linux/cdev.h> 48#include <linux/cdev.h>
49#include <linux/vmalloc.h> 49#include <linux/vmalloc.h>
50#include <linux/io.h> 50#include <linux/io.h>
51#include <linux/sched/mm.h>
51 52
52#include <rdma/ib.h> 53#include <rdma/ib.h>
53 54
diff --git a/drivers/infiniband/hw/mlx4/main.c b/drivers/infiniband/hw/mlx4/main.c
index 88608906ce25..56da8f0d71bb 100644
--- a/drivers/infiniband/hw/mlx4/main.c
+++ b/drivers/infiniband/hw/mlx4/main.c
@@ -39,6 +39,8 @@
39#include <linux/inetdevice.h> 39#include <linux/inetdevice.h>
40#include <linux/rtnetlink.h> 40#include <linux/rtnetlink.h>
41#include <linux/if_vlan.h> 41#include <linux/if_vlan.h>
42#include <linux/sched/mm.h>
43
42#include <net/ipv6.h> 44#include <net/ipv6.h>
43#include <net/addrconf.h> 45#include <net/addrconf.h>
44#include <net/devlink.h> 46#include <net/devlink.h>
diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c
index 5b3355268725..4b1ec3ff152a 100644
--- a/drivers/infiniband/hw/mlx5/main.c
+++ b/drivers/infiniband/hw/mlx5/main.c
@@ -41,6 +41,7 @@
41#include <asm/pat.h> 41#include <asm/pat.h>
42#endif 42#endif
43#include <linux/sched.h> 43#include <linux/sched.h>
44#include <linux/sched/mm.h>
44#include <linux/delay.h> 45#include <linux/delay.h>
45#include <rdma/ib_user_verbs.h> 46#include <rdma/ib_user_verbs.h>
46#include <rdma/ib_addr.h> 47#include <rdma/ib_addr.h>
diff --git a/drivers/infiniband/hw/usnic/usnic_uiom.c b/drivers/infiniband/hw/usnic/usnic_uiom.c
index 1ccee6ea5bc3..ba868be5af2e 100644
--- a/drivers/infiniband/hw/usnic/usnic_uiom.c
+++ b/drivers/infiniband/hw/usnic/usnic_uiom.c
@@ -35,6 +35,7 @@
35#include <linux/mm.h> 35#include <linux/mm.h>
36#include <linux/dma-mapping.h> 36#include <linux/dma-mapping.h>
37#include <linux/sched.h> 37#include <linux/sched.h>
38#include <linux/sched/mm.h>
38#include <linux/hugetlb.h> 39#include <linux/hugetlb.h>
39#include <linux/iommu.h> 40#include <linux/iommu.h>
40#include <linux/workqueue.h> 41#include <linux/workqueue.h>
diff --git a/drivers/iommu/amd_iommu_v2.c b/drivers/iommu/amd_iommu_v2.c
index f8ed8c95b685..063343909b0d 100644
--- a/drivers/iommu/amd_iommu_v2.c
+++ b/drivers/iommu/amd_iommu_v2.c
@@ -22,6 +22,7 @@
22#include <linux/profile.h> 22#include <linux/profile.h>
23#include <linux/module.h> 23#include <linux/module.h>
24#include <linux/sched.h> 24#include <linux/sched.h>
25#include <linux/sched/mm.h>
25#include <linux/iommu.h> 26#include <linux/iommu.h>
26#include <linux/wait.h> 27#include <linux/wait.h>
27#include <linux/pci.h> 28#include <linux/pci.h>
diff --git a/drivers/iommu/intel-svm.c b/drivers/iommu/intel-svm.c
index 51f2b228723f..23c427602c55 100644
--- a/drivers/iommu/intel-svm.c
+++ b/drivers/iommu/intel-svm.c
@@ -16,6 +16,7 @@
16#include <linux/intel-iommu.h> 16#include <linux/intel-iommu.h>
17#include <linux/mmu_notifier.h> 17#include <linux/mmu_notifier.h>
18#include <linux/sched.h> 18#include <linux/sched.h>
19#include <linux/sched/mm.h>
19#include <linux/slab.h> 20#include <linux/slab.h>
20#include <linux/intel-svm.h> 21#include <linux/intel-svm.h>
21#include <linux/rculist.h> 22#include <linux/rculist.h>
diff --git a/drivers/lguest/lguest_user.c b/drivers/lguest/lguest_user.c
index 30c60687d277..1a6787bc9386 100644
--- a/drivers/lguest/lguest_user.c
+++ b/drivers/lguest/lguest_user.c
@@ -8,6 +8,7 @@
8#include <linux/miscdevice.h> 8#include <linux/miscdevice.h>
9#include <linux/fs.h> 9#include <linux/fs.h>
10#include <linux/sched.h> 10#include <linux/sched.h>
11#include <linux/sched/mm.h>
11#include <linux/file.h> 12#include <linux/file.h>
12#include <linux/slab.h> 13#include <linux/slab.h>
13#include <linux/export.h> 14#include <linux/export.h>
diff --git a/drivers/misc/cxl/fault.c b/drivers/misc/cxl/fault.c
index 377e650a2a1d..e33011e3e7e2 100644
--- a/drivers/misc/cxl/fault.c
+++ b/drivers/misc/cxl/fault.c
@@ -9,6 +9,7 @@
9 9
10#include <linux/workqueue.h> 10#include <linux/workqueue.h>
11#include <linux/sched.h> 11#include <linux/sched.h>
12#include <linux/sched/mm.h>
12#include <linux/pid.h> 13#include <linux/pid.h>
13#include <linux/mm.h> 14#include <linux/mm.h>
14#include <linux/moduleparam.h> 15#include <linux/moduleparam.h>
diff --git a/drivers/misc/mic/scif/scif_rma.c b/drivers/misc/mic/scif/scif_rma.c
index f806a4471eb9..d0e9c60f944e 100644
--- a/drivers/misc/mic/scif/scif_rma.c
+++ b/drivers/misc/mic/scif/scif_rma.c
@@ -17,6 +17,8 @@
17 */ 17 */
18#include <linux/dma_remapping.h> 18#include <linux/dma_remapping.h>
19#include <linux/pagemap.h> 19#include <linux/pagemap.h>
20#include <linux/sched/mm.h>
21
20#include "scif_main.h" 22#include "scif_main.h"
21#include "scif_map.h" 23#include "scif_map.h"
22 24
diff --git a/drivers/oprofile/buffer_sync.c b/drivers/oprofile/buffer_sync.c
index 642478d35e99..eb0c35994b54 100644
--- a/drivers/oprofile/buffer_sync.c
+++ b/drivers/oprofile/buffer_sync.c
@@ -31,6 +31,7 @@
31#include <linux/fs.h> 31#include <linux/fs.h>
32#include <linux/oprofile.h> 32#include <linux/oprofile.h>
33#include <linux/sched.h> 33#include <linux/sched.h>
34#include <linux/sched/mm.h>
34#include <linux/gfp.h> 35#include <linux/gfp.h>
35 36
36#include "oprofile_stats.h" 37#include "oprofile_stats.h"
diff --git a/drivers/vfio/vfio_iommu_spapr_tce.c b/drivers/vfio/vfio_iommu_spapr_tce.c
index 59b3f62a2d64..185d50ee1b12 100644
--- a/drivers/vfio/vfio_iommu_spapr_tce.c
+++ b/drivers/vfio/vfio_iommu_spapr_tce.c
@@ -20,6 +20,8 @@
20#include <linux/err.h> 20#include <linux/err.h>
21#include <linux/vfio.h> 21#include <linux/vfio.h>
22#include <linux/vmalloc.h> 22#include <linux/vmalloc.h>
23#include <linux/sched/mm.h>
24
23#include <asm/iommu.h> 25#include <asm/iommu.h>
24#include <asm/tce.h> 26#include <asm/tce.h>
25#include <asm/mmu_context.h> 27#include <asm/mmu_context.h>
diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c
index bd6f293c4ebd..7e94c7fc90ae 100644
--- a/drivers/vfio/vfio_iommu_type1.c
+++ b/drivers/vfio/vfio_iommu_type1.c
@@ -32,6 +32,7 @@
32#include <linux/mm.h> 32#include <linux/mm.h>
33#include <linux/rbtree.h> 33#include <linux/rbtree.h>
34#include <linux/sched.h> 34#include <linux/sched.h>
35#include <linux/sched/mm.h>
35#include <linux/slab.h> 36#include <linux/slab.h>
36#include <linux/uaccess.h> 37#include <linux/uaccess.h>
37#include <linux/vfio.h> 38#include <linux/vfio.h>
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index 4269e621e254..4a00140a7624 100644
--- a/drivers/vhost/vhost.c
+++ b/drivers/vhost/vhost.c
@@ -27,6 +27,7 @@
27#include <linux/cgroup.h> 27#include <linux/cgroup.h>
28#include <linux/module.h> 28#include <linux/module.h>
29#include <linux/sort.h> 29#include <linux/sort.h>
30#include <linux/sched/mm.h>
30#include <linux/interval_tree_generic.h> 31#include <linux/interval_tree_generic.h>
31 32
32#include "vhost.h" 33#include "vhost.h"
diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index 2ef2b61b69df..c77a0751a311 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -32,6 +32,7 @@
32#include <linux/types.h> 32#include <linux/types.h>
33#include <linux/uaccess.h> 33#include <linux/uaccess.h>
34#include <linux/sched.h> 34#include <linux/sched.h>
35#include <linux/sched/mm.h>
35#include <linux/spinlock.h> 36#include <linux/spinlock.h>
36#include <linux/slab.h> 37#include <linux/slab.h>
37#include <linux/highmem.h> 38#include <linux/highmem.h>
diff --git a/fs/exec.c b/fs/exec.c
index e595e1529581..8929da96cca1 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -32,6 +32,7 @@
32#include <linux/swap.h> 32#include <linux/swap.h>
33#include <linux/string.h> 33#include <linux/string.h>
34#include <linux/init.h> 34#include <linux/init.h>
35#include <linux/sched/mm.h>
35#include <linux/pagemap.h> 36#include <linux/pagemap.h>
36#include <linux/perf_event.h> 37#include <linux/perf_event.h>
37#include <linux/highmem.h> 38#include <linux/highmem.h>
diff --git a/fs/proc/array.c b/fs/proc/array.c
index fe12b519d09b..61bea3a4ecc5 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -60,6 +60,7 @@
60#include <linux/tty.h> 60#include <linux/tty.h>
61#include <linux/string.h> 61#include <linux/string.h>
62#include <linux/mman.h> 62#include <linux/mman.h>
63#include <linux/sched/mm.h>
63#include <linux/proc_fs.h> 64#include <linux/proc_fs.h>
64#include <linux/ioport.h> 65#include <linux/ioport.h>
65#include <linux/uaccess.h> 66#include <linux/uaccess.h>
diff --git a/fs/proc/base.c b/fs/proc/base.c
index 27af4ea315a3..9efe12376af1 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -86,6 +86,7 @@
86#include <linux/fs_struct.h> 86#include <linux/fs_struct.h>
87#include <linux/slab.h> 87#include <linux/slab.h>
88#include <linux/sched/autogroup.h> 88#include <linux/sched/autogroup.h>
89#include <linux/sched/mm.h>
89#include <linux/flex_array.h> 90#include <linux/flex_array.h>
90#include <linux/posix-timers.h> 91#include <linux/posix-timers.h>
91#ifdef CONFIG_HARDWALL 92#ifdef CONFIG_HARDWALL
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index ee3efb229ef6..f08bd31c1081 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -11,6 +11,7 @@
11#include <linux/mempolicy.h> 11#include <linux/mempolicy.h>
12#include <linux/rmap.h> 12#include <linux/rmap.h>
13#include <linux/swap.h> 13#include <linux/swap.h>
14#include <linux/sched/mm.h>
14#include <linux/swapops.h> 15#include <linux/swapops.h>
15#include <linux/mmu_notifier.h> 16#include <linux/mmu_notifier.h>
16#include <linux/page_idle.h> 17#include <linux/page_idle.h>
diff --git a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
index 1ef97cfcf422..23266694db11 100644
--- a/fs/proc/task_nommu.c
+++ b/fs/proc/task_nommu.c
@@ -7,6 +7,8 @@
7#include <linux/ptrace.h> 7#include <linux/ptrace.h>
8#include <linux/slab.h> 8#include <linux/slab.h>
9#include <linux/seq_file.h> 9#include <linux/seq_file.h>
10#include <linux/sched/mm.h>
11
10#include "internal.h" 12#include "internal.h"
11 13
12/* 14/*
diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c
index 3c421d06a18e..18d12bfff770 100644
--- a/fs/userfaultfd.c
+++ b/fs/userfaultfd.c
@@ -15,6 +15,7 @@
15#include <linux/list.h> 15#include <linux/list.h>
16#include <linux/hashtable.h> 16#include <linux/hashtable.h>
17#include <linux/sched.h> 17#include <linux/sched.h>
18#include <linux/sched/mm.h>
18#include <linux/mm.h> 19#include <linux/mm.h>
19#include <linux/poll.h> 20#include <linux/poll.h>
20#include <linux/slab.h> 21#include <linux/slab.h>
diff --git a/include/linux/sched/mm.h b/include/linux/sched/mm.h
new file mode 100644
index 000000000000..a7adba1cd0a9
--- /dev/null
+++ b/include/linux/sched/mm.h
@@ -0,0 +1,6 @@
1#ifndef _LINUX_SCHED_MM_H
2#define _LINUX_SCHED_MM_H
3
4#include <linux/sched.h>
5
6#endif /* _LINUX_SCHED_MM_H */
diff --git a/kernel/cgroup/cpuset.c b/kernel/cgroup/cpuset.c
index b3088886cd37..a5c46db2855c 100644
--- a/kernel/cgroup/cpuset.c
+++ b/kernel/cgroup/cpuset.c
@@ -44,6 +44,7 @@
44#include <linux/proc_fs.h> 44#include <linux/proc_fs.h>
45#include <linux/rcupdate.h> 45#include <linux/rcupdate.h>
46#include <linux/sched.h> 46#include <linux/sched.h>
47#include <linux/sched/mm.h>
47#include <linux/seq_file.h> 48#include <linux/seq_file.h>
48#include <linux/security.h> 49#include <linux/security.h>
49#include <linux/slab.h> 50#include <linux/slab.h>
diff --git a/kernel/events/core.c b/kernel/events/core.c
index 42fe16a84f97..6f41548f2e32 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -47,6 +47,7 @@
47#include <linux/namei.h> 47#include <linux/namei.h>
48#include <linux/parser.h> 48#include <linux/parser.h>
49#include <linux/sched/clock.h> 49#include <linux/sched/clock.h>
50#include <linux/sched/mm.h>
50 51
51#include "internal.h" 52#include "internal.h"
52 53
diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
index d630f8ac4d2f..62f2dbd13efc 100644
--- a/kernel/events/uprobes.c
+++ b/kernel/events/uprobes.c
@@ -27,6 +27,7 @@
27#include <linux/pagemap.h> /* read_mapping_page */ 27#include <linux/pagemap.h> /* read_mapping_page */
28#include <linux/slab.h> 28#include <linux/slab.h>
29#include <linux/sched.h> 29#include <linux/sched.h>
30#include <linux/sched/mm.h>
30#include <linux/export.h> 31#include <linux/export.h>
31#include <linux/rmap.h> /* anon_vma_prepare */ 32#include <linux/rmap.h> /* anon_vma_prepare */
32#include <linux/mmu_notifier.h> /* set_pte_at_notify */ 33#include <linux/mmu_notifier.h> /* set_pte_at_notify */
diff --git a/kernel/exit.c b/kernel/exit.c
index 9c0b92833fbb..48649ccbb649 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -7,6 +7,7 @@
7#include <linux/mm.h> 7#include <linux/mm.h>
8#include <linux/slab.h> 8#include <linux/slab.h>
9#include <linux/sched/autogroup.h> 9#include <linux/sched/autogroup.h>
10#include <linux/sched/mm.h>
10#include <linux/interrupt.h> 11#include <linux/interrupt.h>
11#include <linux/module.h> 12#include <linux/module.h>
12#include <linux/capability.h> 13#include <linux/capability.h>
diff --git a/kernel/fork.c b/kernel/fork.c
index 234f4bfb8efd..1875468e2a81 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -13,6 +13,7 @@
13 13
14#include <linux/slab.h> 14#include <linux/slab.h>
15#include <linux/sched/autogroup.h> 15#include <linux/sched/autogroup.h>
16#include <linux/sched/mm.h>
16#include <linux/init.h> 17#include <linux/init.h>
17#include <linux/unistd.h> 18#include <linux/unistd.h>
18#include <linux/module.h> 19#include <linux/module.h>
diff --git a/kernel/futex.c b/kernel/futex.c
index 8ddcf9ea953c..229a744b1781 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -62,6 +62,7 @@
62#include <linux/ptrace.h> 62#include <linux/ptrace.h>
63#include <linux/sched/rt.h> 63#include <linux/sched/rt.h>
64#include <linux/sched/wake_q.h> 64#include <linux/sched/wake_q.h>
65#include <linux/sched/mm.h>
65#include <linux/hugetlb.h> 66#include <linux/hugetlb.h>
66#include <linux/freezer.h> 67#include <linux/freezer.h>
67#include <linux/bootmem.h> 68#include <linux/bootmem.h>
diff --git a/kernel/ptrace.c b/kernel/ptrace.c
index 49ba7c1ade9d..6fe5a2897912 100644
--- a/kernel/ptrace.c
+++ b/kernel/ptrace.c
@@ -10,6 +10,7 @@
10#include <linux/capability.h> 10#include <linux/capability.h>
11#include <linux/export.h> 11#include <linux/export.h>
12#include <linux/sched.h> 12#include <linux/sched.h>
13#include <linux/sched/mm.h>
13#include <linux/errno.h> 14#include <linux/errno.h>
14#include <linux/mm.h> 15#include <linux/mm.h>
15#include <linux/highmem.h> 16#include <linux/highmem.h>
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
index 4d386461f13a..e2307a6c29f1 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -5,6 +5,7 @@
5#include <linux/sched/rt.h> 5#include <linux/sched/rt.h>
6#include <linux/sched/clock.h> 6#include <linux/sched/clock.h>
7#include <linux/sched/wake_q.h> 7#include <linux/sched/wake_q.h>
8#include <linux/sched/mm.h>
8#include <linux/u64_stats_sync.h> 9#include <linux/u64_stats_sync.h>
9#include <linux/sched/deadline.h> 10#include <linux/sched/deadline.h>
10#include <linux/kernel_stat.h> 11#include <linux/kernel_stat.h>
diff --git a/kernel/sys.c b/kernel/sys.c
index cfe82ae62423..dc71ec1e1967 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -51,6 +51,7 @@
51#include <linux/sched.h> 51#include <linux/sched.h>
52#include <linux/sched/autogroup.h> 52#include <linux/sched/autogroup.h>
53#include <linux/sched/loadavg.h> 53#include <linux/sched/loadavg.h>
54#include <linux/sched/mm.h>
54#include <linux/rcupdate.h> 55#include <linux/rcupdate.h>
55#include <linux/uidgid.h> 56#include <linux/uidgid.h>
56#include <linux/cred.h> 57#include <linux/cred.h>
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
index 107afca97649..02a4aeb22c47 100644
--- a/kernel/trace/trace_output.c
+++ b/kernel/trace/trace_output.c
@@ -9,6 +9,7 @@
9#include <linux/mutex.h> 9#include <linux/mutex.h>
10#include <linux/ftrace.h> 10#include <linux/ftrace.h>
11#include <linux/sched/clock.h> 11#include <linux/sched/clock.h>
12#include <linux/sched/mm.h>
12 13
13#include "trace_output.h" 14#include "trace_output.h"
14 15
diff --git a/kernel/tsacct.c b/kernel/tsacct.c
index 5c21f0535056..571a2d3821d8 100644
--- a/kernel/tsacct.c
+++ b/kernel/tsacct.c
@@ -18,6 +18,7 @@
18 18
19#include <linux/kernel.h> 19#include <linux/kernel.h>
20#include <linux/sched.h> 20#include <linux/sched.h>
21#include <linux/sched/mm.h>
21#include <linux/tsacct_kern.h> 22#include <linux/tsacct_kern.h>
22#include <linux/acct.h> 23#include <linux/acct.h>
23#include <linux/jiffies.h> 24#include <linux/jiffies.h>
diff --git a/mm/khugepaged.c b/mm/khugepaged.c
index 34bce5c308e3..212a2afe8830 100644
--- a/mm/khugepaged.c
+++ b/mm/khugepaged.c
@@ -2,6 +2,7 @@
2 2
3#include <linux/mm.h> 3#include <linux/mm.h>
4#include <linux/sched.h> 4#include <linux/sched.h>
5#include <linux/sched/mm.h>
5#include <linux/mmu_notifier.h> 6#include <linux/mmu_notifier.h>
6#include <linux/rmap.h> 7#include <linux/rmap.h>
7#include <linux/swap.h> 8#include <linux/swap.h>
diff --git a/mm/ksm.c b/mm/ksm.c
index 520e4c37fec7..5632c9d02457 100644
--- a/mm/ksm.c
+++ b/mm/ksm.c
@@ -19,6 +19,7 @@
19#include <linux/fs.h> 19#include <linux/fs.h>
20#include <linux/mman.h> 20#include <linux/mman.h>
21#include <linux/sched.h> 21#include <linux/sched.h>
22#include <linux/sched/mm.h>
22#include <linux/rwsem.h> 23#include <linux/rwsem.h>
23#include <linux/pagemap.h> 24#include <linux/pagemap.h>
24#include <linux/rmap.h> 25#include <linux/rmap.h>
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 45867e439d31..c52ec893e241 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -35,6 +35,7 @@
35#include <linux/memcontrol.h> 35#include <linux/memcontrol.h>
36#include <linux/cgroup.h> 36#include <linux/cgroup.h>
37#include <linux/mm.h> 37#include <linux/mm.h>
38#include <linux/sched/mm.h>
38#include <linux/shmem_fs.h> 39#include <linux/shmem_fs.h>
39#include <linux/hugetlb.h> 40#include <linux/hugetlb.h>
40#include <linux/pagemap.h> 41#include <linux/pagemap.h>
diff --git a/mm/memory.c b/mm/memory.c
index 14fc0b40f0bb..b0495ec74d29 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -40,6 +40,7 @@
40 40
41#include <linux/kernel_stat.h> 41#include <linux/kernel_stat.h>
42#include <linux/mm.h> 42#include <linux/mm.h>
43#include <linux/sched/mm.h>
43#include <linux/hugetlb.h> 44#include <linux/hugetlb.h>
44#include <linux/mman.h> 45#include <linux/mman.h>
45#include <linux/swap.h> 46#include <linux/swap.h>
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 1e7873e40c9a..90892416ed75 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -73,6 +73,7 @@
73#include <linux/hugetlb.h> 73#include <linux/hugetlb.h>
74#include <linux/kernel.h> 74#include <linux/kernel.h>
75#include <linux/sched.h> 75#include <linux/sched.h>
76#include <linux/sched/mm.h>
76#include <linux/nodemask.h> 77#include <linux/nodemask.h>
77#include <linux/cpuset.h> 78#include <linux/cpuset.h>
78#include <linux/slab.h> 79#include <linux/slab.h>
diff --git a/mm/migrate.c b/mm/migrate.c
index 2c63ac06791b..9a0897a14d37 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -40,6 +40,7 @@
40#include <linux/mmu_notifier.h> 40#include <linux/mmu_notifier.h>
41#include <linux/page_idle.h> 41#include <linux/page_idle.h>
42#include <linux/page_owner.h> 42#include <linux/page_owner.h>
43#include <linux/sched/mm.h>
43 44
44#include <asm/tlbflush.h> 45#include <asm/tlbflush.h>
45 46
diff --git a/mm/mmu_context.c b/mm/mmu_context.c
index daf67bb02b4a..8888b124a386 100644
--- a/mm/mmu_context.c
+++ b/mm/mmu_context.c
@@ -5,6 +5,7 @@
5 5
6#include <linux/mm.h> 6#include <linux/mm.h>
7#include <linux/sched.h> 7#include <linux/sched.h>
8#include <linux/sched/mm.h>
8#include <linux/mmu_context.h> 9#include <linux/mmu_context.h>
9#include <linux/export.h> 10#include <linux/export.h>
10 11
diff --git a/mm/mmu_notifier.c b/mm/mmu_notifier.c
index 32bc9f2ff7eb..a7652acd2ab9 100644
--- a/mm/mmu_notifier.c
+++ b/mm/mmu_notifier.c
@@ -17,6 +17,7 @@
17#include <linux/srcu.h> 17#include <linux/srcu.h>
18#include <linux/rcupdate.h> 18#include <linux/rcupdate.h>
19#include <linux/sched.h> 19#include <linux/sched.h>
20#include <linux/sched/mm.h>
20#include <linux/slab.h> 21#include <linux/slab.h>
21 22
22/* global SRCU for all MMs */ 23/* global SRCU for all MMs */
diff --git a/mm/nommu.c b/mm/nommu.c
index aae06e854552..79abed514a4b 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -17,6 +17,7 @@
17 17
18#include <linux/export.h> 18#include <linux/export.h>
19#include <linux/mm.h> 19#include <linux/mm.h>
20#include <linux/sched/mm.h>
20#include <linux/vmacache.h> 21#include <linux/vmacache.h>
21#include <linux/mman.h> 22#include <linux/mman.h>
22#include <linux/swap.h> 23#include <linux/swap.h>
diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index 51c091849dcb..d28936618698 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -22,6 +22,7 @@
22#include <linux/err.h> 22#include <linux/err.h>
23#include <linux/gfp.h> 23#include <linux/gfp.h>
24#include <linux/sched.h> 24#include <linux/sched.h>
25#include <linux/sched/mm.h>
25#include <linux/swap.h> 26#include <linux/swap.h>
26#include <linux/timex.h> 27#include <linux/timex.h>
27#include <linux/jiffies.h> 28#include <linux/jiffies.h>
diff --git a/mm/process_vm_access.c b/mm/process_vm_access.c
index 84d0c7eada2b..8973cd231ece 100644
--- a/mm/process_vm_access.c
+++ b/mm/process_vm_access.c
@@ -12,6 +12,7 @@
12#include <linux/mm.h> 12#include <linux/mm.h>
13#include <linux/uio.h> 13#include <linux/uio.h>
14#include <linux/sched.h> 14#include <linux/sched.h>
15#include <linux/sched/mm.h>
15#include <linux/highmem.h> 16#include <linux/highmem.h>
16#include <linux/ptrace.h> 17#include <linux/ptrace.h>
17#include <linux/slab.h> 18#include <linux/slab.h>
diff --git a/mm/rmap.c b/mm/rmap.c
index 8774791e2809..0367a0506667 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -46,6 +46,7 @@
46 */ 46 */
47 47
48#include <linux/mm.h> 48#include <linux/mm.h>
49#include <linux/sched/mm.h>
49#include <linux/pagemap.h> 50#include <linux/pagemap.h>
50#include <linux/swap.h> 51#include <linux/swap.h>
51#include <linux/swapops.h> 52#include <linux/swapops.h>
diff --git a/mm/swapfile.c b/mm/swapfile.c
index fadc6a1c0da0..ff2bf3f61b14 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -6,6 +6,7 @@
6 */ 6 */
7 7
8#include <linux/mm.h> 8#include <linux/mm.h>
9#include <linux/sched/mm.h>
9#include <linux/hugetlb.h> 10#include <linux/hugetlb.h>
10#include <linux/mman.h> 11#include <linux/mman.h>
11#include <linux/slab.h> 12#include <linux/slab.h>
diff --git a/mm/util.c b/mm/util.c
index b8f538863b5a..14f4e13323e2 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -5,6 +5,7 @@
5#include <linux/export.h> 5#include <linux/export.h>
6#include <linux/err.h> 6#include <linux/err.h>
7#include <linux/sched.h> 7#include <linux/sched.h>
8#include <linux/sched/mm.h>
8#include <linux/security.h> 9#include <linux/security.h>
9#include <linux/swap.h> 10#include <linux/swap.h>
10#include <linux/swapops.h> 11#include <linux/swapops.h>
diff --git a/virt/kvm/async_pf.c b/virt/kvm/async_pf.c
index 2366177172f6..bb298a200cd3 100644
--- a/virt/kvm/async_pf.c
+++ b/virt/kvm/async_pf.c
@@ -24,6 +24,7 @@
24#include <linux/slab.h> 24#include <linux/slab.h>
25#include <linux/module.h> 25#include <linux/module.h>
26#include <linux/mmu_context.h> 26#include <linux/mmu_context.h>
27#include <linux/sched/mm.h>
27 28
28#include "async_pf.h" 29#include "async_pf.h"
29#include <trace/events/kvm.h> 30#include <trace/events/kvm.h>
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 35f71409d9ee..dd5de09bf362 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -33,6 +33,7 @@
33#include <linux/syscore_ops.h> 33#include <linux/syscore_ops.h>
34#include <linux/cpu.h> 34#include <linux/cpu.h>
35#include <linux/sched.h> 35#include <linux/sched.h>
36#include <linux/sched/mm.h>
36#include <linux/cpumask.h> 37#include <linux/cpumask.h>
37#include <linux/smp.h> 38#include <linux/smp.h>
38#include <linux/anon_inodes.h> 39#include <linux/anon_inodes.h>