linux-stable/arch
Kirill A. Shutemov b4e98d9ac7 mm: account pud page tables
On a machine with 5-level paging support a process can allocate
significant amount of memory and stay unnoticed by oom-killer and memory
cgroup.  The trick is to allocate a lot of PUD page tables.  We don't
account PUD page tables, only PMD and PTE.

We already addressed the same issue for PMD page tables, see commit
dc6c9a35b6 ("mm: account pmd page tables to the process").
Introduction of 5-level paging brings the same issue for PUD page
tables.

The patch expands accounting to PUD level.

[kirill.shutemov@linux.intel.com: s/pmd_t/pud_t/]
  Link: http://lkml.kernel.org/r/20171004074305.x35eh5u7ybbt5kar@black.fi.intel.com
[heiko.carstens@de.ibm.com: s390/mm: fix pud table accounting]
  Link: http://lkml.kernel.org/r/20171103090551.18231-1-heiko.carstens@de.ibm.com
Link: http://lkml.kernel.org/r/20171002080427.3320-1-kirill.shutemov@linux.intel.com
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Acked-by: Rik van Riel <riel@redhat.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-11-15 18:21:04 -08:00
..
alpha Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-11-15 10:14:11 -08:00
arc Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-11-15 10:14:11 -08:00
arm arm64 updates for 4.15 2017-11-15 10:56:56 -08:00
arm64 arm64 updates for 4.15 2017-11-15 10:56:56 -08:00
blackfin Merge branch 'i2c/for-4.15' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2017-11-14 17:52:21 -08:00
c6x DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
cris DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
frv mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
h8300 mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
hexagon A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
ia64 A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
m32r m32r: fix endianness constraints 2017-11-15 18:21:00 -08:00
m68k A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
metag DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
microblaze DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
mips mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
mn10300 mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
nios2 DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
openrisc DeviceTree for 4.15: 2017-11-14 18:25:40 -08:00
parisc A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
powerpc mm: account pud page tables 2017-11-15 18:21:04 -08:00
riscv RISC-V Port for Linux 4.15 v9 2017-11-15 10:49:15 -08:00
s390 mm: account pud page tables 2017-11-15 18:21:04 -08:00
score License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sh mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
sparc mm: account pud page tables 2017-11-15 18:21:04 -08:00
tile A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
um mm, arch: remove empty_bad_page* 2017-11-15 18:21:03 -08:00
unicore32 Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-11-15 10:14:11 -08:00
x86 A couple of dma-mapping updates: 2017-11-14 16:54:12 -08:00
xtensa Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-11-15 10:14:11 -08:00
.gitignore
Kconfig Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00