Commit 10f3291a authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'akpm' (fixes from Andrew Morton)

Merge patches from Andrew Morton:
 "22 fixes"

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (22 commits)
  kexec: purgatory: add clean-up for purgatory directory
  Documentation/kdump/kdump.txt: add ARM description
  flush_icache_range: export symbol to fix build errors
  tools: selftests: fix build issue with make kselftests target
  ocfs2: quorum: add a log for node not fenced
  ocfs2: o2net: set tcp user timeout to max value
  ocfs2: o2net: don't shutdown connection when idle timeout
  ocfs2: do not write error flag to user structure we cannot copy from/to
  x86/purgatory: use approprate -m64/-32 build flag for arch/x86/purgatory
  drivers/rtc/rtc-s5m.c: re-add support for devices without irq specified
  xattr: fix check for simultaneous glibc header inclusion
  kexec: remove CONFIG_KEXEC dependency on crypto
  kexec: create a new config option CONFIG_KEXEC_FILE for new syscall
  x86,mm: fix pte_special versus pte_numa
  hugetlb_cgroup: use lockdep_assert_held rather than spin_is_locked
  mm/zpool: use prefixed module loading
  zram: fix incorrect stat with failed_reads
  lib: turn CONFIG_STACKTRACE into an actual option.
  mm: actually clear pmd_numa before invalidating
  memblock, memhotplug: fix wrong type in memblock_find_in_range_node().
  ...
parents 878e580e b0108f9e
Loading
Loading
Loading
Loading
+33 −3
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ memory image to a dump file on the local disk, or across the network to
a remote system.

Kdump and kexec are currently supported on the x86, x86_64, ppc64, ia64,
and s390x architectures.
s390x and arm architectures.

When the system kernel boots, it reserves a small section of memory for
the dump-capture kernel. This ensures that ongoing Direct Memory Access
@@ -112,7 +112,7 @@ There are two possible methods of using Kdump.
2) Or use the system kernel binary itself as dump-capture kernel and there is
   no need to build a separate dump-capture kernel. This is possible
   only with the architectures which support a relocatable kernel. As
   of today, i386, x86_64, ppc64 and ia64 architectures support relocatable
   of today, i386, x86_64, ppc64, ia64 and arm architectures support relocatable
   kernel.

Building a relocatable kernel is advantageous from the point of view that
@@ -241,6 +241,13 @@ Dump-capture kernel config options (Arch Dependent, ia64)
  kernel will be aligned to 64Mb, so if the start address is not then
  any space below the alignment point will be wasted.

Dump-capture kernel config options (Arch Dependent, arm)
----------------------------------------------------------

-   To use a relocatable kernel,
    Enable "AUTO_ZRELADDR" support under "Boot" options:

    AUTO_ZRELADDR=y

Extended crashkernel syntax
===========================
@@ -256,6 +263,10 @@ The syntax is:
    crashkernel=<range1>:<size1>[,<range2>:<size2>,...][@offset]
    range=start-[end]

Please note, on arm, the offset is required.
    crashkernel=<range1>:<size1>[,<range2>:<size2>,...]@offset
    range=start-[end]

    'start' is inclusive and 'end' is exclusive.

For example:
@@ -296,6 +307,12 @@ Boot into System Kernel
   on the memory consumption of the kdump system. In general this is not
   dependent on the memory size of the production system.

   On arm, use "crashkernel=Y@X". Note that the start address of the kernel
   will be aligned to 128MiB (0x08000000), so if the start address is not then
   any space below the alignment point may be overwritten by the dump-capture kernel,
   which means it is possible that the vmcore is not that precise as expected.


Load the Dump-capture Kernel
============================

@@ -315,7 +332,8 @@ For ia64:
	- Use vmlinux or vmlinuz.gz
For s390x:
	- Use image or bzImage

For arm:
	- Use zImage

If you are using a uncompressed vmlinux image then use following command
to load dump-capture kernel.
@@ -331,6 +349,15 @@ to load dump-capture kernel.
   --initrd=<initrd-for-dump-capture-kernel> \
   --append="root=<root-dev> <arch-specific-options>"

If you are using a compressed zImage, then use following command
to load dump-capture kernel.

   kexec --type zImage -p <dump-capture-kernel-bzImage> \
   --initrd=<initrd-for-dump-capture-kernel> \
   --dtb=<dtb-for-dump-capture-kernel> \
   --append="root=<root-dev> <arch-specific-options>"


Please note, that --args-linux does not need to be specified for ia64.
It is planned to make this a no-op on that architecture, but for now
it should be omitted
@@ -347,6 +374,9 @@ For ppc64:
For s390x:
	"1 maxcpus=1 cgroup_disable=memory"

For arm:
	"1 maxcpus=1 reset_devices"

Notes on loading the dump-capture kernel:

* By default, the ELF headers are stored in ELF64 format to support
+1 −0
Original line number Diff line number Diff line
@@ -581,6 +581,7 @@ void flush_icache_range(unsigned long kstart, unsigned long kend)
		tot_sz -= sz;
	}
}
EXPORT_SYMBOL(flush_icache_range);

/*
 * General purpose helper to make I and D cache lines consistent.
+0 −2
Original line number Diff line number Diff line
@@ -1983,8 +1983,6 @@ config XIP_PHYS_ADDR
config KEXEC
	bool "Kexec system call (EXPERIMENTAL)"
	depends on (!SMP || PM_SLEEP_SMP)
	select CRYPTO
	select CRYPTO_SHA256
	help
	  kexec is a system call that implements the ability to shutdown your
	  current kernel, and to start another kernel.  It is like a reboot
+1 −0
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ void flush_icache_range(unsigned long start, unsigned long end)
	);
	local_irq_restore(flags);
}
EXPORT_SYMBOL(flush_icache_range);

void hexagon_clean_dcache_range(unsigned long start, unsigned long end)
{
+0 −2
Original line number Diff line number Diff line
@@ -549,8 +549,6 @@ source "drivers/sn/Kconfig"
config KEXEC
	bool "kexec system call"
	depends on !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
	select CRYPTO
	select CRYPTO_SHA256
	help
	  kexec is a system call that implements the ability to shutdown your
	  current kernel, and to start another kernel.  It is like a reboot
Loading