linux/arch
James Morse f085371134 UPSTREAM: arm64: hibernate: Support DEBUG_PAGEALLOC
DEBUG_PAGEALLOC removes the valid bit of page table entries to prevent
any access to unallocated memory. Hibernate uses this as a hint that those
pages don't need to be saved/restored. This patch adds the
kernel_page_present() function it uses.

hibernate.c copies the resume kernel's linear map for use during restore.
Add _copy_pte() to fill-in the holes made by DEBUG_PAGEALLOC in the resume
kernel, so we can restore data the original kernel had at these addresses.

Finally, DEBUG_PAGEALLOC means the linear-map alias of KERNEL_START to
KERNEL_END may have holes in it, so we can't lazily clean this whole
area to the PoC. Only clean the new mmuoff region, and the kernel/kvm
idmaps.

This reverts commit da24eb1f3f.

Reported-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
(cherry picked from commit 5ebe3a44cc)
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2017-05-25 18:10:11 +05:30
..
alpha
arc ARCv2: save r30 on kernel entry as gcc uses it for code-gen 2017-05-02 21:19:56 -07:00
arm Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-05-25 10:05:41 +08:00
arm64 UPSTREAM: arm64: hibernate: Support DEBUG_PAGEALLOC 2017-05-25 18:10:11 +05:30
avr32
blackfin
c6x c6x/ptrace: Remove useless PTRACE_SETREGSET implementation 2017-03-31 09:49:53 +02:00
cris
frv
h8300 h8300/ptrace: Fix incorrect register transfer count 2017-03-31 09:49:53 +02:00
hexagon
ia64 UPSTREAM: kbuild: drop FORCE from PHONY targets 2017-04-10 13:24:18 +05:30
m32r
m68k
metag metag/usercopy: Add missing fixups 2017-04-12 12:38:34 +02:00
microblaze
mips Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-05-15 17:32:20 +08:00
mn10300
nios2 nios2: reserve boot memory for device tree 2017-04-12 12:38:34 +02:00
openrisc
parisc Merge tag 'v4.4.46' into linux-linaro-lsk-v4.4 2017-02-04 12:11:15 +08:00
powerpc Merge remote-tracking branch 'lts/linux-4.4.y' into linux-linaro-lsk-v4.4 2017-05-15 17:35:45 +08:00
s390 Merge tag 'v4.4.64' into linux-linaro-lsk-v4.4 2017-04-28 12:03:32 +08:00
score
sh
sparc Merge remote-tracking branch 'lts/linux-4.4.y' into linux-linaro-lsk-v4.4 2017-05-15 17:31:58 +08:00
tile tile/ptrace: Preserve previous registers for short regset write 2017-02-01 08:30:52 +01:00
um
unicore32
x86 Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-05-25 10:05:41 +08:00
xtensa xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD 2017-03-15 09:57:14 +08:00
.gitignore
Kconfig