linux-stable/arch/arm64/mm
AKASHI Takahiro e62aaeac42 arm64: kdump: provide /proc/vmcore file
Arch-specific functions are added to allow for implementing a crash dump
file interface, /proc/vmcore, which can be viewed as a ELF file.

A user space tool, like kexec-tools, is responsible for allocating
a separate region for the core's ELF header within crash kdump kernel
memory and filling it in when executing kexec_load().

Then, its location will be advertised to crash dump kernel via a new
device-tree property, "linux,elfcorehdr", and crash dump kernel preserves
the region for later use with reserve_elfcorehdr() at boot time.

On crash dump kernel, /proc/vmcore will access the primary kernel's memory
with copy_oldmem_page(), which feeds the data page-by-page by ioremap'ing
it since it does not reside in linear mapping on crash dump kernel.

Meanwhile, elfcorehdr_read() is simple as the region is always mapped.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: James Morse <james.morse@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2017-04-05 18:31:38 +01:00
..
cache.S arm64: don't pull uaccess.h into *.S 2016-12-26 13:05:17 -05:00
context.c arm64: cache: Remove support for ASID-tagged VIVT I-caches 2017-03-20 16:16:57 +00:00
copypage.c arm64: Defer dcache flush in __cpu_copy_user_page 2015-12-17 11:07:13 +00:00
dma-mapping.c arm64: Add support for DMA_ATTR_FORCE_CONTIGUOUS to IOMMU 2017-03-22 17:21:37 +00:00
dump.c arm64: dump: Add checking for writable and exectuable pages 2016-11-07 18:15:04 +00:00
extable.c arm64: migrate exception table users off module.h and onto extable.h 2016-09-20 09:36:21 +01:00
fault.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/debug.h> 2017-03-02 08:42:34 +01:00
flush.c arm64: cache: Merge cachetype.h into cache.h 2017-03-20 16:16:59 +00:00
hugetlbpage.c arm64: hugetlb: fix the wrong return value for huge_ptep_set_access_flags 2017-01-11 10:26:40 +00:00
init.c arm64: kdump: provide /proc/vmcore file 2017-04-05 18:31:38 +01:00
ioremap.c arm64: use is_vmalloc_addr 2017-02-09 13:47:56 +00:00
kasan_init.c arm64: kasan: avoid bad virt_to_pfn() 2017-03-10 17:41:41 +00:00
Makefile arm64: Add support for CONFIG_DEBUG_VIRTUAL 2017-01-12 15:05:39 +00:00
mmap.c sched/headers: Prepare for new header dependencies before moving more code to <linux/sched/mm.h> 2017-03-02 08:42:30 +01:00
mmu.c arm64: kdump: protect crash dump kernel memory 2017-04-05 18:28:35 +01:00
numa.c ACPI/NUMA: Do not map pxm to node when NUMA is turned off 2016-12-15 11:32:32 +01:00
pageattr.c arm64: mm: add set_memory_valid() 2017-04-05 18:27:53 +01:00
pgd.c arm64: mm: drop fixup_init() and mm.h 2016-09-06 19:09:38 +01:00
physaddr.c arm64: Add support for CONFIG_DEBUG_VIRTUAL 2017-01-12 15:05:39 +00:00
proc.S arm64: Avoid clobbering mm in erratum workaround on QDF2400 2017-02-24 10:55:31 +00:00
ptdump_debugfs.c arm64: dump: Make ptdump debugfs a separate option 2016-11-07 18:15:04 +00:00