Commit 6614a3c3 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'mm-stable-2022-08-03' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull MM updates from Andrew Morton:
 "Most of the MM queue. A few things are still pending.

  Liam's maple tree rework didn't make it. This has resulted in a few
  other minor patch series being held over for next time.

  Multi-gen LRU still isn't merged as we were waiting for mapletree to
  stabilize. The current plan is to merge MGLRU into -mm soon and to
  later reintroduce mapletree, with a view to hopefully getting both
  into 6.1-rc1.

  Summary:

   - The usual batches of cleanups from Baoquan He, Muchun Song, Miaohe
     Lin, Yang Shi, Anshuman Khandual and Mike Rapoport

   - Some kmemleak fixes from Patrick Wang and Waiman Long

   - DAMON updates from SeongJae Park

   - memcg debug/visibility work from Roman Gushchin

   - vmalloc speedup from Uladzislau Rezki

   - more folio conversion work from Matthew Wilcox

   - enhancements for coherent device memory mapping from Alex Sierra

   - addition of shared pages tracking and CoW support for fsdax, from
     Shiyang Ruan

   - hugetlb optimizations from Mike Kravetz

   - Mel Gorman has contributed some pagealloc changes to improve
     latency and realtime behaviour.

   - mprotect soft-dirty checking has been improved by Peter Xu

   - Many other singleton patches all over the place"

 [ XFS merge from hell as per Darrick Wong in

   https://lore.kernel.org/all/YshKnxb4VwXycPO8@magnolia/ ]

* tag 'mm-stable-2022-08-03' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (282 commits)
  tools/testing/selftests/vm/hmm-tests.c: fix build
  mm: Kconfig: fix typo
  mm: memory-failure: convert to pr_fmt()
  mm: use is_zone_movable_page() helper
  hugetlbfs: fix inaccurate comment in hugetlbfs_statfs()
  hugetlbfs: cleanup some comments in inode.c
  hugetlbfs: remove unneeded header file
  hugetlbfs: remove unneeded hugetlbfs_ops forward declaration
  hugetlbfs: use helper macro SZ_1{K,M}
  mm: cleanup is_highmem()
  mm/hmm: add a test for cross device private faults
  selftests: add soft-dirty into run_vmtests.sh
  selftests: soft-dirty: add test for mprotect
  mm/mprotect: fix soft-dirty check in can_change_pte_writable()
  mm: memcontrol: fix potential oom_lock recursion deadlock
  mm/gup.c: fix formatting in check_and_migrate_movable_page()
  xfs: fail dax mount if reflink is enabled on a partition
  mm/memcontrol.c: remove the redundant updating of stats_flush_threshold
  userfaultfd: don't fail on unrecognized features
  hugetlb_cgroup: fix wrong hugetlb cgroup numa stat
  ...
parents 74cae210 360614c0
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ Description:
			MMUPageSize:           4 kB
			Rss:		     884 kB
			Pss:		     385 kB
			Pss_Dirty:	      68 kB
			Pss_Anon:	     301 kB
			Pss_File:	      80 kB
			Pss_Shmem:	       4 kB
+1 −1
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ Description: Kernel Samepage Merging daemon sysfs interface
		sleep_millisecs: how many milliseconds ksm should sleep between
		scans.

		See Documentation/vm/ksm.rst for more information.
		See Documentation/mm/ksm.rst for more information.

What:		/sys/kernel/mm/ksm/merge_across_nodes
Date:		January 2013
+2 −2
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ Description:
		The alloc_calls file is read-only and lists the kernel code
		locations from which allocations for this cache were performed.
		The alloc_calls file only contains information if debugging is
		enabled for that cache (see Documentation/vm/slub.rst).
		enabled for that cache (see Documentation/mm/slub.rst).

What:		/sys/kernel/slab/<cache>/alloc_fastpath
Date:		February 2008
@@ -219,7 +219,7 @@ Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
Description:
		The free_calls file is read-only and lists the locations of
		object frees if slab debugging is enabled (see
		Documentation/vm/slub.rst).
		Documentation/mm/slub.rst).

What:		/sys/kernel/slab/<cache>/free_fastpath
Date:		February 2008
+25 −6
Original line number Diff line number Diff line
@@ -1237,6 +1237,13 @@ PAGE_SIZE multiple when read back.
	the target cgroup. If less bytes are reclaimed than the
	specified amount, -EAGAIN is returned.

	Please note that the proactive reclaim (triggered by this
	interface) is not meant to indicate memory pressure on the
	memory cgroup. Therefore socket memory balancing triggered by
	the memory reclaim normally is not exercised in this case.
	This means that the networking layer will not adapt based on
	reclaim induced by memory.reclaim.

  memory.peak
	A read-only single value file which exists on non-root
	cgroups.
@@ -1441,6 +1448,24 @@ PAGE_SIZE multiple when read back.
	  workingset_nodereclaim
		Number of times a shadow node has been reclaimed

	  pgscan (npn)
		Amount of scanned pages (in an inactive LRU list)

	  pgsteal (npn)
		Amount of reclaimed pages

	  pgscan_kswapd (npn)
		Amount of scanned pages by kswapd (in an inactive LRU list)

	  pgscan_direct (npn)
		Amount of scanned pages directly  (in an inactive LRU list)

	  pgsteal_kswapd (npn)
		Amount of reclaimed pages by kswapd

	  pgsteal_direct (npn)
		Amount of reclaimed pages directly

	  pgfault (npn)
		Total number of page faults incurred

@@ -1450,12 +1475,6 @@ PAGE_SIZE multiple when read back.
	  pgrefill (npn)
		Amount of scanned pages (in an active LRU list)

	  pgscan (npn)
		Amount of scanned pages (in an inactive LRU list)

	  pgsteal (npn)
		Amount of reclaimed pages

	  pgactivate (npn)
		Amount of pages moved to the active LRU list

+16 −16
Original line number Diff line number Diff line
@@ -1728,9 +1728,11 @@
			Built with CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON=y,
			the default is on.

			This is not compatible with memory_hotplug.memmap_on_memory.
			If both parameters are enabled, hugetlb_free_vmemmap takes
			precedence over memory_hotplug.memmap_on_memory.
			Note that the vmemmap pages may be allocated from the added
			memory block itself when memory_hotplug.memmap_on_memory is
			enabled, those vmemmap pages cannot be optimized even if this
			feature is enabled.  Other vmemmap pages not allocated from
			the added memory block itself do not be affected.

	hung_task_panic=
			[KNL] Should the hung task detector generate panics.
@@ -3073,10 +3075,12 @@
			[KNL,X86,ARM] Boolean flag to enable this feature.
			Format: {on | off (default)}
			When enabled, runtime hotplugged memory will
			allocate its internal metadata (struct pages)
			from the hotadded memory which will allow to
			hotadd a lot of memory without requiring
			additional memory to do so.
			allocate its internal metadata (struct pages,
			those vmemmap pages cannot be optimized even
			if hugetlb_free_vmemmap is enabled) from the
			hotadded memory which will allow to hotadd a
			lot of memory without requiring additional
			memory to do so.
			This feature is disabled by default because it
			has some implication on large (e.g. GB)
			allocations in some configurations (e.g. small
@@ -3086,10 +3090,6 @@
			Note that even when enabled, there are a few cases where
			the feature is not effective.

			This is not compatible with hugetlb_free_vmemmap. If
			both parameters are enabled, hugetlb_free_vmemmap takes
			precedence over memory_hotplug.memmap_on_memory.

	memtest=	[KNL,X86,ARM,M68K,PPC,RISCV] Enable memtest
			Format: <integer>
			default : 0 <disable>
@@ -5502,7 +5502,7 @@
			cache (risks via metadata attacks are mostly
			unchanged). Debug options disable merging on their
			own.
			For more information see Documentation/vm/slub.rst.
			For more information see Documentation/mm/slub.rst.

	slab_max_order=	[MM, SLAB]
			Determines the maximum allowed order for slabs.
@@ -5516,13 +5516,13 @@
			slub_debug can create guard zones around objects and
			may poison objects when not in use. Also tracks the
			last alloc / free. For more information see
			Documentation/vm/slub.rst.
			Documentation/mm/slub.rst.

	slub_max_order= [MM, SLUB]
			Determines the maximum allowed order for slabs.
			A high setting may cause OOMs due to memory
			fragmentation. For more information see
			Documentation/vm/slub.rst.
			Documentation/mm/slub.rst.

	slub_min_objects=	[MM, SLUB]
			The minimum number of objects per slab. SLUB will
@@ -5531,12 +5531,12 @@
			the number of objects indicated. The higher the number
			of objects the smaller the overhead of tracking slabs
			and the less frequently locks need to be acquired.
			For more information see Documentation/vm/slub.rst.
			For more information see Documentation/mm/slub.rst.

	slub_min_order=	[MM, SLUB]
			Determines the minimum page order for slabs. Must be
			lower than slub_max_order.
			For more information see Documentation/vm/slub.rst.
			For more information see Documentation/mm/slub.rst.

	slub_merge	[MM, SLUB]
			Same with slab_merge.
Loading