~dannf/ubuntu/+source/linux/+git/unstable:armserver-4.10.0-2.4

Last commit made on 2017-01-18
Get this branch:
git clone -b armserver-4.10.0-2.4 https://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/unstable
Only dann frazier can upload to this branch. If you are dann frazier please log in for upload directions.

Branch merges

Branch information

Name:
armserver-4.10.0-2.4
Repository:
lp:~dannf/ubuntu/+source/linux/+git/unstable

Recent commits

3214596... by James Morse <email address hidden>

Documentation: dt: chosen properties for arm64 kdump

Add documentation for
 linux,crashkernel-base and crashkernel-size,
 linux,usable-memory-range
 linux,elfcorehdr
used by arm64 kdump to decribe the kdump reserved area, and
the elfcorehdr's location within it.

Signed-off-by: James Morse <email address hidden>
[<email address hidden>: added "linux,crashkernel-base" and "-size" ]
Signed-off-by: AKASHI Takahiro <email address hidden>
Cc: <email address hidden>
Cc: Rob Herring <email address hidden>
Cc: Mark Rutland <email address hidden>
[v29 submittal]

e85e8d9... by AKASHI Takahiro

Documentation: kdump: describe arm64 port

Add arch specific descriptions about kdump usage on arm64 to kdump.txt.

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: Baoquan He <email address hidden>
Acked-by: Dave Young <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

0438d16... by AKASHI Takahiro

arm64: kdump: enable kdump in defconfig

Kdump is enabled by default as kexec is.

Signed-off-by: AKASHI Takahiro <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

8d47e15... by AKASHI Takahiro

arm64: kdump: provide /proc/vmcore file

Add arch-specific functions to provide a dump file, /proc/vmcore.

This file is in ELF format and its ELF header needs to be prepared by
userspace tools, like kexec-tools, in adance. The primary kernel is
responsible to allocate the region with reserve_elfcorehdr() at boot time
and advertize its location to crash dump kernel via a new device-tree
property, "linux,elfcorehdr".

Then crash dump kernel 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.

We also need our own elfcorehdr_read() here since the header is placed
within crash dump kernel's usable memory.

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: James Morse <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

7235ca5... by dann frazier

UBUNTU: [Config] CONFIG_CRASH_DUMP=y on arm64

Signed-off-by: dann frazier <email address hidden>

d8128f3... by AKASHI Takahiro

arm64: kdump: add VMCOREINFO's for user-space tools

In addition to common VMCOREINFO's defined in
crash_save_vmcoreinfo_init(), we need to know, for crash utility,
  - kimage_voffset
  - PHYS_OFFSET
to examine the contents of a dump file (/proc/vmcore) correctly
due to the introduction of KASLR (CONFIG_RANDOMIZE_BASE) in v4.6.

  - VA_BITS
is also required for makedumpfile command.

arch_crash_save_vmcoreinfo() appends them to the dump file.
More VMCOREINFO's may be added later.

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: James Morse <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

ce35a19... by AKASHI Takahiro

arm64: kdump: implement machine_crash_shutdown()

Primary kernel calls machine_crash_shutdown() to shut down non-boot cpus
and save registers' status in per-cpu ELF notes before starting crash
dump kernel. See kernel_kexec().
Even if not all secondary cpus have shut down, we do kdump anyway.

As we don't have to make non-boot(crashed) cpus offline (to preserve
correct status of cpus at crash dump) before shutting down, this patch
also adds a variant of smp_send_stop().

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: James Morse <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

ba476e2... by AKASHI Takahiro

arm64: kdump: reserve memory for crash dump kernel

"crashkernel=" kernel parameter specifies the size (and optionally
the start address) of the system ram used by crash dump kernel.
reserve_crashkernel() will allocate and reserve the memory at the startup
of primary kernel.

This memory range will be exported to userspace via:
 - an entry named "Crash kernel" in /proc/iomem, and
 - "linux,crashkernel-base" and "linux,crashkernel-size" under
   /sys/firmware/devicetree/base/chosen

Signed-off-by: AKASHI Takahiro <email address hidden>
Signed-off-by: Mark Salter <email address hidden>
Signed-off-by: Pratyush Anand <email address hidden>
Reviewed-by: James Morse <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

82e7f94... by AKASHI Takahiro

arm64: limit memory regions based on DT property, usable-memory-range

Crash dump kernel utilizes only a subset of available memory as System RAM.
On arm64 kdump, This memory range is advertized to crash dump kernel via
a device-tree property under /chosen,
   linux,usable-memory-range = <BASE SIZE>

Crash dump kernel reads this property at boot time and calls
memblock_cap_memory_range() to limit usable memory ranges which are
described as entries in UEFI memory map table or "memory" nodes in
a device tree blob.

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: Geoff Levand <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
[v29 submittal]

09e6f67... by AKASHI Takahiro

memblock: add memblock_cap_memory_range()

Add memblock_cap_memory_range() which will remove all the memblock regions
except the memory range specified in the arguments. In addition, rework is
done on memblock_mem_limit_remove_map() to re-implement it using
memblock_cap_memory_range().

This function, like memblock_mem_limit_remove_map(), will not remove
memblocks with MEMMAP_NOMAP attribute as they may be mapped and accessed
later as "device memory."
See the commit a571d4eb55d8 ("mm/memblock.c: add new infrastructure to
address the mem limit issue").

This function is used, in a succeeding patch in the series of arm64 kdump
suuport, to limit the range of usable memory, or System RAM, on crash dump
kernel.
(Please note that "mem=" parameter is of little use for this purpose.)

Signed-off-by: AKASHI Takahiro <email address hidden>
Reviewed-by: Will Deacon <email address hidden>
Acked-by: Catalin Marinas <email address hidden>
Cc: <email address hidden>
Cc: Andrew Morton <email address hidden>
[v29 submittal]