Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d34fc1ad authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'akpm' (patches from Andrew)

Merge updates from Andrew Morton:

 - various misc bits

 - DAX updates

 - OCFS2

 - most of MM

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (119 commits)
  mm,fork: introduce MADV_WIPEONFORK
  x86,mpx: make mpx depend on x86-64 to free up VMA flag
  mm: add /proc/pid/smaps_rollup
  mm: hugetlb: clear target sub-page last when clearing huge page
  mm: oom: let oom_reap_task and exit_mmap run concurrently
  swap: choose swap device according to numa node
  mm: replace TIF_MEMDIE checks by tsk_is_oom_victim
  mm, oom: do not rely on TIF_MEMDIE for memory reserves access
  z3fold: use per-cpu unbuddied lists
  mm, swap: don't use VMA based swap readahead if HDD is used as swap
  mm, swap: add sysfs interface for VMA based swap readahead
  mm, swap: VMA based swap readahead
  mm, swap: fix swap readahead marking
  mm, swap: add swap readahead hit statistics
  mm/vmalloc.c: don't reinvent the wheel but use existing llist API
  mm/vmstat.c: fix wrong comment
  selftests/memfd: add memfd_create hugetlbfs selftest
  mm/shmem: add hugetlbfs support to memfd_create()
  mm, devm_memremap_pages: use multi-order radix for ZONE_DEVICE lookups
  mm/vmalloc.c: halve the number of comparisons performed in pcpu_get_vm_areas()
  ...
parents 1c9fe440 d2cd9ede
Loading
Loading
Loading
Loading
+31 −0
Original line number Diff line number Diff line
What:		/proc/pid/smaps_rollup
Date:		August 2017
Contact:	Daniel Colascione <dancol@google.com>
Description:
		This file provides pre-summed memory information for a
		process.  The format is identical to /proc/pid/smaps,
		except instead of an entry for each VMA in a process,
		smaps_rollup has a single entry (tagged "[rollup]")
		for which each field is the sum of the corresponding
		fields from all the maps in /proc/pid/smaps.
		For more details, see the procfs man page.

		Typical output looks like this:

		00100000-ff709000 ---p 00000000 00:00 0		 [rollup]
		Rss:		     884 kB
		Pss:		     385 kB
		Shared_Clean:	     696 kB
		Shared_Dirty:	       0 kB
		Private_Clean:	     120 kB
		Private_Dirty:	      68 kB
		Referenced:	     884 kB
		Anonymous:	      68 kB
		LazyFree:	       0 kB
		AnonHugePages:	       0 kB
		ShmemPmdMapped:	       0 kB
		Shared_Hugetlb:	       0 kB
		Private_Hugetlb:       0 kB
		Swap:		       0 kB
		SwapPss:	       0 kB
		Locked:		     385 kB
+8 −0
Original line number Diff line number Diff line
@@ -90,3 +90,11 @@ Description:
		device's debugging info useful for kernel developers. Its
		format is not documented intentionally and may change
		anytime without any notice.

What:		/sys/block/zram<id>/backing_dev
Date:		June 2017
Contact:	Minchan Kim <minchan@kernel.org>
Description:
		The backing_dev file is read-write and set up backing
		device for zram to write incompressible pages.
		For using, user should enable CONFIG_ZRAM_WRITEBACK.
+26 −0
Original line number Diff line number Diff line
What:		/sys/kernel/mm/swap/
Date:		August 2017
Contact:	Linux memory management mailing list <linux-mm@kvack.org>
Description:	Interface for swapping

What:		/sys/kernel/mm/swap/vma_ra_enabled
Date:		August 2017
Contact:	Linux memory management mailing list <linux-mm@kvack.org>
Description:	Enable/disable VMA based swap readahead.

		If set to true, the VMA based swap readahead algorithm
		will be used for swappable anonymous pages mapped in a
		VMA, and the global swap readahead algorithm will be
		still used for tmpfs etc. other users.  If set to
		false, the global swap readahead algorithm will be
		used for all swappable pages.

What:		/sys/kernel/mm/swap/vma_ra_max_order
Date:		August 2017
Contact:	Linux memory management mailing list <linux-mm@kvack.org>
Description:	The max readahead size in order for VMA based swap readahead

		VMA based swap readahead algorithm will readahead at
		most 1 << max_order pages for each readahead.  The
		real readahead size for each readahead will be scaled
		according to the estimation algorithm.
+1 −1
Original line number Diff line number Diff line
@@ -2783,7 +2783,7 @@
			Allowed values are enable and disable

	numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
			one of ['zone', 'node', 'default'] can be specified
			'node', 'default' can be specified
			This can be set from sysctl after boot.
			See Documentation/sysctl/vm.txt for details.

+11 −0
Original line number Diff line number Diff line
@@ -168,6 +168,7 @@ max_comp_streams RW the number of possible concurrent compress operations
comp_algorithm    RW    show and change the compression algorithm
compact           WO    trigger memory compaction
debug_stat        RO    this file is used for zram debugging purposes
backing_dev	  RW	set up backend storage for zram to write out


User space is advised to use the following files to read the device statistics.
@@ -231,5 +232,15 @@ line of text and contains the following stats separated by whitespace:
	resets the disksize to zero. You must set the disksize again
	before reusing the device.

* Optional Feature

= writeback

With incompressible pages, there is no memory saving with zram.
Instead, with CONFIG_ZRAM_WRITEBACK, zram can write incompressible page
to backing storage rather than keeping it in memory.
User should set up backing device via /sys/block/zramX/backing_dev
before disksize setting.

Nitin Gupta
ngupta@vflare.org
Loading