Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

+71
+1
arch/arc/include/asm/mmu_context.h
··· 20 20 21 21 #include <asm/arcregs.h> 22 22 #include <asm/tlb.h> 23 + #include <linux/sched/mm.h> 23 24 24 25 #include <asm-generic/mm_hooks.h> 25 26
+2
arch/arc/kernel/troubleshoot.c
··· 13 13 #include <linux/fs_struct.h> 14 14 #include <linux/proc_fs.h> 15 15 #include <linux/file.h> 16 + #include <linux/sched/mm.h> 17 + 16 18 #include <asm/arcregs.h> 17 19 #include <asm/irqflags.h> 18 20
+1
arch/arm/mach-rpc/ecard.c
··· 31 31 #include <linux/kernel.h> 32 32 #include <linux/types.h> 33 33 #include <linux/sched.h> 34 + #include <linux/sched/mm.h> 34 35 #include <linux/interrupt.h> 35 36 #include <linux/completion.h> 36 37 #include <linux/reboot.h>
+1
arch/frv/mm/mmu-context.c
··· 10 10 */ 11 11 12 12 #include <linux/sched.h> 13 + #include <linux/sched/mm.h> 13 14 #include <linux/mm.h> 14 15 #include <asm/tlbflush.h> 15 16
+1
arch/m68k/sun3/mmu_emu.c
··· 15 15 #include <linux/bootmem.h> 16 16 #include <linux/bitops.h> 17 17 #include <linux/module.h> 18 + #include <linux/sched/mm.h> 18 19 19 20 #include <asm/setup.h> 20 21 #include <asm/traps.h>
+2
arch/powerpc/platforms/cell/spufs/context.c
··· 25 25 #include <linux/slab.h> 26 26 #include <linux/atomic.h> 27 27 #include <linux/sched.h> 28 + #include <linux/sched/mm.h> 29 + 28 30 #include <asm/spu.h> 29 31 #include <asm/spu_csa.h> 30 32 #include "spufs.h"
+1
drivers/android/binder.c
··· 32 32 #include <linux/debugfs.h> 33 33 #include <linux/rbtree.h> 34 34 #include <linux/sched.h> 35 + #include <linux/sched/mm.h> 35 36 #include <linux/seq_file.h> 36 37 #include <linux/uaccess.h> 37 38 #include <linux/vmalloc.h>
+1
drivers/gpu/drm/amd/amdkfd/kfd_process.c
··· 23 23 #include <linux/mutex.h> 24 24 #include <linux/log2.h> 25 25 #include <linux/sched.h> 26 + #include <linux/sched/mm.h> 26 27 #include <linux/slab.h> 27 28 #include <linux/amd-iommu.h> 28 29 #include <linux/notifier.h>
+1
drivers/gpu/drm/etnaviv/etnaviv_gem.c
··· 16 16 17 17 #include <linux/spinlock.h> 18 18 #include <linux/shmem_fs.h> 19 + #include <linux/sched/mm.h> 19 20 20 21 #include "etnaviv_drv.h" 21 22 #include "etnaviv_gem.h"
+1
drivers/gpu/drm/i915/i915_gem_userptr.c
··· 31 31 #include <linux/mmu_notifier.h> 32 32 #include <linux/mempolicy.h> 33 33 #include <linux/swap.h> 34 + #include <linux/sched/mm.h> 34 35 35 36 struct i915_mm_struct { 36 37 struct mm_struct *mm;
+1
drivers/infiniband/core/umem.c
··· 35 35 #include <linux/mm.h> 36 36 #include <linux/dma-mapping.h> 37 37 #include <linux/sched.h> 38 + #include <linux/sched/mm.h> 38 39 #include <linux/export.h> 39 40 #include <linux/hugetlb.h> 40 41 #include <linux/slab.h>
+1
drivers/infiniband/core/umem_odp.c
··· 32 32 33 33 #include <linux/types.h> 34 34 #include <linux/sched.h> 35 + #include <linux/sched/mm.h> 35 36 #include <linux/pid.h> 36 37 #include <linux/slab.h> 37 38 #include <linux/export.h>
+1
drivers/infiniband/hw/hfi1/file_ops.c
··· 48 48 #include <linux/cdev.h> 49 49 #include <linux/vmalloc.h> 50 50 #include <linux/io.h> 51 + #include <linux/sched/mm.h> 51 52 52 53 #include <rdma/ib.h> 53 54
+2
drivers/infiniband/hw/mlx4/main.c
··· 39 39 #include <linux/inetdevice.h> 40 40 #include <linux/rtnetlink.h> 41 41 #include <linux/if_vlan.h> 42 + #include <linux/sched/mm.h> 43 + 42 44 #include <net/ipv6.h> 43 45 #include <net/addrconf.h> 44 46 #include <net/devlink.h>
+1
drivers/infiniband/hw/mlx5/main.c
··· 41 41 #include <asm/pat.h> 42 42 #endif 43 43 #include <linux/sched.h> 44 + #include <linux/sched/mm.h> 44 45 #include <linux/delay.h> 45 46 #include <rdma/ib_user_verbs.h> 46 47 #include <rdma/ib_addr.h>
+1
drivers/infiniband/hw/usnic/usnic_uiom.c
··· 35 35 #include <linux/mm.h> 36 36 #include <linux/dma-mapping.h> 37 37 #include <linux/sched.h> 38 + #include <linux/sched/mm.h> 38 39 #include <linux/hugetlb.h> 39 40 #include <linux/iommu.h> 40 41 #include <linux/workqueue.h>
+1
drivers/iommu/amd_iommu_v2.c
··· 22 22 #include <linux/profile.h> 23 23 #include <linux/module.h> 24 24 #include <linux/sched.h> 25 + #include <linux/sched/mm.h> 25 26 #include <linux/iommu.h> 26 27 #include <linux/wait.h> 27 28 #include <linux/pci.h>
+1
drivers/iommu/intel-svm.c
··· 16 16 #include <linux/intel-iommu.h> 17 17 #include <linux/mmu_notifier.h> 18 18 #include <linux/sched.h> 19 + #include <linux/sched/mm.h> 19 20 #include <linux/slab.h> 20 21 #include <linux/intel-svm.h> 21 22 #include <linux/rculist.h>
+1
drivers/lguest/lguest_user.c
··· 8 8 #include <linux/miscdevice.h> 9 9 #include <linux/fs.h> 10 10 #include <linux/sched.h> 11 + #include <linux/sched/mm.h> 11 12 #include <linux/file.h> 12 13 #include <linux/slab.h> 13 14 #include <linux/export.h>
+1
drivers/misc/cxl/fault.c
··· 9 9 10 10 #include <linux/workqueue.h> 11 11 #include <linux/sched.h> 12 + #include <linux/sched/mm.h> 12 13 #include <linux/pid.h> 13 14 #include <linux/mm.h> 14 15 #include <linux/moduleparam.h>
+2
drivers/misc/mic/scif/scif_rma.c
··· 17 17 */ 18 18 #include <linux/dma_remapping.h> 19 19 #include <linux/pagemap.h> 20 + #include <linux/sched/mm.h> 21 + 20 22 #include "scif_main.h" 21 23 #include "scif_map.h" 22 24
+1
drivers/oprofile/buffer_sync.c
··· 31 31 #include <linux/fs.h> 32 32 #include <linux/oprofile.h> 33 33 #include <linux/sched.h> 34 + #include <linux/sched/mm.h> 34 35 #include <linux/gfp.h> 35 36 36 37 #include "oprofile_stats.h"
+2
drivers/vfio/vfio_iommu_spapr_tce.c
··· 20 20 #include <linux/err.h> 21 21 #include <linux/vfio.h> 22 22 #include <linux/vmalloc.h> 23 + #include <linux/sched/mm.h> 24 + 23 25 #include <asm/iommu.h> 24 26 #include <asm/tce.h> 25 27 #include <asm/mmu_context.h>
+1
drivers/vfio/vfio_iommu_type1.c
··· 32 32 #include <linux/mm.h> 33 33 #include <linux/rbtree.h> 34 34 #include <linux/sched.h> 35 + #include <linux/sched/mm.h> 35 36 #include <linux/slab.h> 36 37 #include <linux/uaccess.h> 37 38 #include <linux/vfio.h>
+1
drivers/vhost/vhost.c
··· 27 27 #include <linux/cgroup.h> 28 28 #include <linux/module.h> 29 29 #include <linux/sort.h> 30 + #include <linux/sched/mm.h> 30 31 #include <linux/interval_tree_generic.h> 31 32 32 33 #include "vhost.h"
+1
drivers/xen/gntdev.c
··· 32 32 #include <linux/types.h> 33 33 #include <linux/uaccess.h> 34 34 #include <linux/sched.h> 35 + #include <linux/sched/mm.h> 35 36 #include <linux/spinlock.h> 36 37 #include <linux/slab.h> 37 38 #include <linux/highmem.h>
+1
fs/exec.c
··· 32 32 #include <linux/swap.h> 33 33 #include <linux/string.h> 34 34 #include <linux/init.h> 35 + #include <linux/sched/mm.h> 35 36 #include <linux/pagemap.h> 36 37 #include <linux/perf_event.h> 37 38 #include <linux/highmem.h>
+1
fs/proc/array.c
··· 60 60 #include <linux/tty.h> 61 61 #include <linux/string.h> 62 62 #include <linux/mman.h> 63 + #include <linux/sched/mm.h> 63 64 #include <linux/proc_fs.h> 64 65 #include <linux/ioport.h> 65 66 #include <linux/uaccess.h>
+1
fs/proc/base.c
··· 86 86 #include <linux/fs_struct.h> 87 87 #include <linux/slab.h> 88 88 #include <linux/sched/autogroup.h> 89 + #include <linux/sched/mm.h> 89 90 #include <linux/flex_array.h> 90 91 #include <linux/posix-timers.h> 91 92 #ifdef CONFIG_HARDWALL
+1
fs/proc/task_mmu.c
··· 11 11 #include <linux/mempolicy.h> 12 12 #include <linux/rmap.h> 13 13 #include <linux/swap.h> 14 + #include <linux/sched/mm.h> 14 15 #include <linux/swapops.h> 15 16 #include <linux/mmu_notifier.h> 16 17 #include <linux/page_idle.h>
+2
fs/proc/task_nommu.c
··· 7 7 #include <linux/ptrace.h> 8 8 #include <linux/slab.h> 9 9 #include <linux/seq_file.h> 10 + #include <linux/sched/mm.h> 11 + 10 12 #include "internal.h" 11 13 12 14 /*
+1
fs/userfaultfd.c
··· 15 15 #include <linux/list.h> 16 16 #include <linux/hashtable.h> 17 17 #include <linux/sched.h> 18 + #include <linux/sched/mm.h> 18 19 #include <linux/mm.h> 19 20 #include <linux/poll.h> 20 21 #include <linux/slab.h>
+6
include/linux/sched/mm.h
··· 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 */
+1
kernel/cgroup/cpuset.c
··· 44 44 #include <linux/proc_fs.h> 45 45 #include <linux/rcupdate.h> 46 46 #include <linux/sched.h> 47 + #include <linux/sched/mm.h> 47 48 #include <linux/seq_file.h> 48 49 #include <linux/security.h> 49 50 #include <linux/slab.h>
+1
kernel/events/core.c
··· 47 47 #include <linux/namei.h> 48 48 #include <linux/parser.h> 49 49 #include <linux/sched/clock.h> 50 + #include <linux/sched/mm.h> 50 51 51 52 #include "internal.h" 52 53
+1
kernel/events/uprobes.c
··· 27 27 #include <linux/pagemap.h> /* read_mapping_page */ 28 28 #include <linux/slab.h> 29 29 #include <linux/sched.h> 30 + #include <linux/sched/mm.h> 30 31 #include <linux/export.h> 31 32 #include <linux/rmap.h> /* anon_vma_prepare */ 32 33 #include <linux/mmu_notifier.h> /* set_pte_at_notify */
+1
kernel/exit.c
··· 7 7 #include <linux/mm.h> 8 8 #include <linux/slab.h> 9 9 #include <linux/sched/autogroup.h> 10 + #include <linux/sched/mm.h> 10 11 #include <linux/interrupt.h> 11 12 #include <linux/module.h> 12 13 #include <linux/capability.h>
+1
kernel/fork.c
··· 13 13 14 14 #include <linux/slab.h> 15 15 #include <linux/sched/autogroup.h> 16 + #include <linux/sched/mm.h> 16 17 #include <linux/init.h> 17 18 #include <linux/unistd.h> 18 19 #include <linux/module.h>
+1
kernel/futex.c
··· 62 62 #include <linux/ptrace.h> 63 63 #include <linux/sched/rt.h> 64 64 #include <linux/sched/wake_q.h> 65 + #include <linux/sched/mm.h> 65 66 #include <linux/hugetlb.h> 66 67 #include <linux/freezer.h> 67 68 #include <linux/bootmem.h>
+1
kernel/ptrace.c
··· 10 10 #include <linux/capability.h> 11 11 #include <linux/export.h> 12 12 #include <linux/sched.h> 13 + #include <linux/sched/mm.h> 13 14 #include <linux/errno.h> 14 15 #include <linux/mm.h> 15 16 #include <linux/highmem.h>
+1
kernel/sched/sched.h
··· 5 5 #include <linux/sched/rt.h> 6 6 #include <linux/sched/clock.h> 7 7 #include <linux/sched/wake_q.h> 8 + #include <linux/sched/mm.h> 8 9 #include <linux/u64_stats_sync.h> 9 10 #include <linux/sched/deadline.h> 10 11 #include <linux/kernel_stat.h>
+1
kernel/sys.c
··· 51 51 #include <linux/sched.h> 52 52 #include <linux/sched/autogroup.h> 53 53 #include <linux/sched/loadavg.h> 54 + #include <linux/sched/mm.h> 54 55 #include <linux/rcupdate.h> 55 56 #include <linux/uidgid.h> 56 57 #include <linux/cred.h>
+1
kernel/trace/trace_output.c
··· 9 9 #include <linux/mutex.h> 10 10 #include <linux/ftrace.h> 11 11 #include <linux/sched/clock.h> 12 + #include <linux/sched/mm.h> 12 13 13 14 #include "trace_output.h" 14 15
+1
kernel/tsacct.c
··· 18 18 19 19 #include <linux/kernel.h> 20 20 #include <linux/sched.h> 21 + #include <linux/sched/mm.h> 21 22 #include <linux/tsacct_kern.h> 22 23 #include <linux/acct.h> 23 24 #include <linux/jiffies.h>
+1
mm/khugepaged.c
··· 2 2 3 3 #include <linux/mm.h> 4 4 #include <linux/sched.h> 5 + #include <linux/sched/mm.h> 5 6 #include <linux/mmu_notifier.h> 6 7 #include <linux/rmap.h> 7 8 #include <linux/swap.h>
+1
mm/ksm.c
··· 19 19 #include <linux/fs.h> 20 20 #include <linux/mman.h> 21 21 #include <linux/sched.h> 22 + #include <linux/sched/mm.h> 22 23 #include <linux/rwsem.h> 23 24 #include <linux/pagemap.h> 24 25 #include <linux/rmap.h>
+1
mm/memcontrol.c
··· 35 35 #include <linux/memcontrol.h> 36 36 #include <linux/cgroup.h> 37 37 #include <linux/mm.h> 38 + #include <linux/sched/mm.h> 38 39 #include <linux/shmem_fs.h> 39 40 #include <linux/hugetlb.h> 40 41 #include <linux/pagemap.h>
+1
mm/memory.c
··· 40 40 41 41 #include <linux/kernel_stat.h> 42 42 #include <linux/mm.h> 43 + #include <linux/sched/mm.h> 43 44 #include <linux/hugetlb.h> 44 45 #include <linux/mman.h> 45 46 #include <linux/swap.h>
+1
mm/mempolicy.c
··· 73 73 #include <linux/hugetlb.h> 74 74 #include <linux/kernel.h> 75 75 #include <linux/sched.h> 76 + #include <linux/sched/mm.h> 76 77 #include <linux/nodemask.h> 77 78 #include <linux/cpuset.h> 78 79 #include <linux/slab.h>
+1
mm/migrate.c
··· 40 40 #include <linux/mmu_notifier.h> 41 41 #include <linux/page_idle.h> 42 42 #include <linux/page_owner.h> 43 + #include <linux/sched/mm.h> 43 44 44 45 #include <asm/tlbflush.h> 45 46
+1
mm/mmu_context.c
··· 5 5 6 6 #include <linux/mm.h> 7 7 #include <linux/sched.h> 8 + #include <linux/sched/mm.h> 8 9 #include <linux/mmu_context.h> 9 10 #include <linux/export.h> 10 11
+1
mm/mmu_notifier.c
··· 17 17 #include <linux/srcu.h> 18 18 #include <linux/rcupdate.h> 19 19 #include <linux/sched.h> 20 + #include <linux/sched/mm.h> 20 21 #include <linux/slab.h> 21 22 22 23 /* global SRCU for all MMs */
+1
mm/nommu.c
··· 17 17 18 18 #include <linux/export.h> 19 19 #include <linux/mm.h> 20 + #include <linux/sched/mm.h> 20 21 #include <linux/vmacache.h> 21 22 #include <linux/mman.h> 22 23 #include <linux/swap.h>
+1
mm/oom_kill.c
··· 22 22 #include <linux/err.h> 23 23 #include <linux/gfp.h> 24 24 #include <linux/sched.h> 25 + #include <linux/sched/mm.h> 25 26 #include <linux/swap.h> 26 27 #include <linux/timex.h> 27 28 #include <linux/jiffies.h>
+1
mm/process_vm_access.c
··· 12 12 #include <linux/mm.h> 13 13 #include <linux/uio.h> 14 14 #include <linux/sched.h> 15 + #include <linux/sched/mm.h> 15 16 #include <linux/highmem.h> 16 17 #include <linux/ptrace.h> 17 18 #include <linux/slab.h>
+1
mm/rmap.c
··· 46 46 */ 47 47 48 48 #include <linux/mm.h> 49 + #include <linux/sched/mm.h> 49 50 #include <linux/pagemap.h> 50 51 #include <linux/swap.h> 51 52 #include <linux/swapops.h>
+1
mm/swapfile.c
··· 6 6 */ 7 7 8 8 #include <linux/mm.h> 9 + #include <linux/sched/mm.h> 9 10 #include <linux/hugetlb.h> 10 11 #include <linux/mman.h> 11 12 #include <linux/slab.h>
+1
mm/util.c
··· 5 5 #include <linux/export.h> 6 6 #include <linux/err.h> 7 7 #include <linux/sched.h> 8 + #include <linux/sched/mm.h> 8 9 #include <linux/security.h> 9 10 #include <linux/swap.h> 10 11 #include <linux/swapops.h>
+1
virt/kvm/async_pf.c
··· 24 24 #include <linux/slab.h> 25 25 #include <linux/module.h> 26 26 #include <linux/mmu_context.h> 27 + #include <linux/sched/mm.h> 27 28 28 29 #include "async_pf.h" 29 30 #include <trace/events/kvm.h>
+1
virt/kvm/kvm_main.c
··· 33 33 #include <linux/syscore_ops.h> 34 34 #include <linux/cpu.h> 35 35 #include <linux/sched.h> 36 + #include <linux/sched/mm.h> 36 37 #include <linux/cpumask.h> 37 38 #include <linux/smp.h> 38 39 #include <linux/anon_inodes.h>