linux/arch/mips
Laurent Dufour 2ae416b142 mm: new mm hook framework
CRIU is recreating the process memory layout by remapping the checkpointee
memory area on top of the current process (criu).  This includes remapping
the vDSO to the place it has at checkpoint time.

However some architectures like powerpc are keeping a reference to the
vDSO base address to build the signal return stack frame by calling the
vDSO sigreturn service.  So once the vDSO has been moved, this reference
is no more valid and the signal frame built later are not usable.

This patch serie is introducing a new mm hook framework, and a new
arch_remap hook which is called when mremap is done and the mm lock still
hold.  The next patch is adding the vDSO remap and unmap tracking to the
powerpc architecture.

This patch (of 3):

This patch introduces a new set of header file to manage mm hooks:
- per architecture empty header file (arch/x/include/asm/mm-arch-hooks.h)
- a generic header (include/linux/mm-arch-hooks.h)

The architecture which need to overwrite a hook as to redefine it in its
header file, while architecture which doesn't need have nothing to do.

The default hooks are defined in the generic header and are used in the
case the architecture is not defining it.

In a next step, mm hooks defined in include/asm-generic/mm_hooks.h should
be moved here.

Signed-off-by: Laurent Dufour <ldufour@linux.vnet.ibm.com>
Suggested-by: Andrew Morton <akpm@linux-foundation.org>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Pavel Emelyanov <xemul@parallels.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-06-24 17:49:41 -07:00
..
alchemy
ar7 MIPS: AR7: Replace mac address parsing 2015-04-02 13:54:22 +02:00
ath25
ath79 MIPS: ath79: Add a missing new line in log message 2015-06-02 16:07:31 +02:00
bcm47xx Merge branch '4.0-fixes' into mips-for-linux-next 2015-04-13 16:03:32 +02:00
bcm63xx This is the final removal (after several years!) of the obsolete cpus_* 2015-04-20 10:19:03 -07:00
bmips
boot MIPS: Reduce kernel image size for !CONFIG_DEBUG_ZBOOT 2015-04-02 13:54:25 +02:00
cavium-octeon Merge branch 'mvebu/drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc 2015-06-19 22:07:07 +08:00
cobalt MIPS: Cobalt: Do not build MTD platform device registration code as module. 2015-06-10 10:39:30 +02:00
configs MIPS: Fuloong 2E: Replace CONFIG_USB_ISP1760_HCD by CONFIG_USB_ISP1760 2015-05-26 16:46:53 +02:00
dec MIPS: DEC: Do not set up the FPU interrupt if no FPU 2015-04-08 01:10:46 +02:00
emma
fw
include mm: new mm hook framework 2015-06-24 17:49:41 -07:00
jazz
jz4740
kernel Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-06-22 15:52:04 -07:00
kvm The bulk of the changes here is for x86. And for once it's not 2015-06-24 09:36:49 -07:00
lantiq
lasat Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2015-04-17 15:50:54 -04:00
lib MIPS: strnlen_user.S: Fix a CPU_DADDI_WORKAROUNDS regression 2015-05-29 20:23:58 +02:00
loongson MIPS: Loongson: Do not register 8250 platform device from module. 2015-06-10 10:43:07 +02:00
loongson1
math-emu MIPS: Fix a preemption issue with thread's FPU defaults 2015-05-12 23:15:49 +02:00
mm mm/hugetlb: reduce arch dependent code about huge_pmd_unshare 2015-06-24 17:49:41 -07:00
mti-malta TTY/Serial patches for 4.1-rc1 2015-04-21 09:33:10 -07:00
mti-sead3 MIPS: SEAD3: Combine all platform device registrations in one file. 2015-04-02 17:07:26 +02:00
net MIPS: BPF: Fix stack pointer allocation 2015-06-06 10:21:10 +02:00
netlogic Merge branch '4.0-fixes' into mips-for-linux-next 2015-04-13 16:03:32 +02:00
oprofile
paravirt
pci PCI: Remove unnecessary #includes of <asm/pci.h> 2015-06-08 07:56:09 -05:00
pistachio
pmcs-msp71xx
pnx833x
power MIPS: Hibernate: flush TLB entries earlier 2015-04-10 15:41:52 +02:00
ralink MIPS: ralink: Fix clearing the illegal access interrupt 2015-06-01 10:51:37 +02:00
rb532
sgi-ip22
sgi-ip27 This is the final removal (after several years!) of the obsolete cpus_* 2015-04-20 10:19:03 -07:00
sgi-ip32 MIPS: IP32: Fix build errors in reset code in DS1685 platform hook. 2015-05-13 00:01:41 +02:00
sibyte
sni
txx9
vr41xx
Kbuild
Kbuild.platforms
Kconfig This is the bulk of GPIO changes for the v4.1 development 2015-04-18 08:22:10 -04:00
Kconfig.debug
Makefile MIPS: Fix wrong CHECKFLAGS (sparse builds) with GCC 5.1 2015-05-12 23:22:39 +02:00