linux-uconsole/arch/powerpc
Aneesh Kumar K.V 49c473e123 powerpc/radix: Fix kernel crash with mremap()
commit 579b9239c1 upstream.

With support for split pmd lock, we use pmd page pmd_huge_pte pointer
to store the deposited page table. In those config when we move page
tables we need to make sure we move the deposited page table to the
correct pmd page. Otherwise this can result in crash when we withdraw
of deposited page table because we can find the pmd_huge_pte NULL.

eg:

  __split_huge_pmd+0x1070/0x1940
  __split_huge_pmd+0xe34/0x1940 (unreliable)
  vma_adjust_trans_huge+0x110/0x1c0
  __vma_adjust+0x2b4/0x9b0
  __split_vma+0x1b8/0x280
  __do_munmap+0x13c/0x550
  sys_mremap+0x220/0x7e0
  system_call+0x5c/0x70

Fixes: 675d995297 ("powerpc/book3s64: Enable split pmd ptlock.")
Cc: stable@vger.kernel.org # v4.18+
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-15 08:10:12 +01:00
..
boot powerpc/boot: Set target when cross-compiling for clang 2019-01-13 09:51:05 +01:00
configs powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
crypto powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
include powerpc/radix: Fix kernel crash with mremap() 2019-02-15 08:10:12 +01:00
kernel powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. 2019-02-12 19:47:16 +01:00
kvm KVM: PPC: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv machines 2019-02-12 19:47:09 +01:00
lib powerpc/lib: fix book3s/32 boot failure due to code patching 2018-10-02 23:34:14 +10:00
math-emu License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mm powerpc/radix: Fix kernel crash with mremap() 2019-02-15 08:10:12 +01:00
net powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
oprofile treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
perf powerpc/perf: Fix thresholding counter data for unknown type 2019-02-12 19:47:14 +01:00
platforms powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. 2019-02-12 19:47:16 +01:00
purgatory powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
sysdev treewide: correct "differenciate" and "instanciate" typos 2018-08-23 18:48:43 -07:00
tools powerpc: Add a checkpatch wrapper with our preferred settings 2018-08-07 21:49:25 +10:00
xmon powerpc/xmon: Fix invocation inside lock region 2019-01-26 09:32:37 +01:00
Kconfig powerpc: disable support for relative ksymtab references 2018-08-29 16:12:07 -07:00
Kconfig.debug Kconfig: consolidate the "Kernel hacking" menu 2018-08-02 08:06:48 +09:00
Makefile powerpc: avoid -mno-sched-epilog on GCC 4.9 and newer 2019-01-13 09:51:05 +01:00
Makefile.postlink License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00