Skip to content

Commit 6614a3c

Browse files
committed
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 ...
2 parents 74cae21 + 360614c commit 6614a3c

File tree

380 files changed

+7165
-3216
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

380 files changed

+7165
-3216
lines changed

Documentation/ABI/testing/procfs-smaps_rollup

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ Description:
2222
MMUPageSize: 4 kB
2323
Rss: 884 kB
2424
Pss: 385 kB
25+
Pss_Dirty: 68 kB
2526
Pss_Anon: 301 kB
2627
Pss_File: 80 kB
2728
Pss_Shmem: 4 kB

Documentation/ABI/testing/sysfs-kernel-mm-ksm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Description: Kernel Samepage Merging daemon sysfs interface
4141
sleep_millisecs: how many milliseconds ksm should sleep between
4242
scans.
4343

44-
See Documentation/vm/ksm.rst for more information.
44+
See Documentation/mm/ksm.rst for more information.
4545

4646
What: /sys/kernel/mm/ksm/merge_across_nodes
4747
Date: January 2013

Documentation/ABI/testing/sysfs-kernel-slab

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Description:
3737
The alloc_calls file is read-only and lists the kernel code
3838
locations from which allocations for this cache were performed.
3939
The alloc_calls file only contains information if debugging is
40-
enabled for that cache (see Documentation/vm/slub.rst).
40+
enabled for that cache (see Documentation/mm/slub.rst).
4141

4242
What: /sys/kernel/slab/<cache>/alloc_fastpath
4343
Date: February 2008
@@ -219,7 +219,7 @@ Contact: Pekka Enberg <[email protected]>,
219219
Description:
220220
The free_calls file is read-only and lists the locations of
221221
object frees if slab debugging is enabled (see
222-
Documentation/vm/slub.rst).
222+
Documentation/mm/slub.rst).
223223

224224
What: /sys/kernel/slab/<cache>/free_fastpath
225225
Date: February 2008

Documentation/admin-guide/cgroup-v2.rst

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1237,6 +1237,13 @@ PAGE_SIZE multiple when read back.
12371237
the target cgroup. If less bytes are reclaimed than the
12381238
specified amount, -EAGAIN is returned.
12391239

1240+
Please note that the proactive reclaim (triggered by this
1241+
interface) is not meant to indicate memory pressure on the
1242+
memory cgroup. Therefore socket memory balancing triggered by
1243+
the memory reclaim normally is not exercised in this case.
1244+
This means that the networking layer will not adapt based on
1245+
reclaim induced by memory.reclaim.
1246+
12401247
memory.peak
12411248
A read-only single value file which exists on non-root
12421249
cgroups.
@@ -1441,6 +1448,24 @@ PAGE_SIZE multiple when read back.
14411448
workingset_nodereclaim
14421449
Number of times a shadow node has been reclaimed
14431450

1451+
pgscan (npn)
1452+
Amount of scanned pages (in an inactive LRU list)
1453+
1454+
pgsteal (npn)
1455+
Amount of reclaimed pages
1456+
1457+
pgscan_kswapd (npn)
1458+
Amount of scanned pages by kswapd (in an inactive LRU list)
1459+
1460+
pgscan_direct (npn)
1461+
Amount of scanned pages directly (in an inactive LRU list)
1462+
1463+
pgsteal_kswapd (npn)
1464+
Amount of reclaimed pages by kswapd
1465+
1466+
pgsteal_direct (npn)
1467+
Amount of reclaimed pages directly
1468+
14441469
pgfault (npn)
14451470
Total number of page faults incurred
14461471

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

1453-
pgscan (npn)
1454-
Amount of scanned pages (in an inactive LRU list)
1455-
1456-
pgsteal (npn)
1457-
Amount of reclaimed pages
1458-
14591478
pgactivate (npn)
14601479
Amount of pages moved to the active LRU list
14611480

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1728,9 +1728,11 @@
17281728
Built with CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON=y,
17291729
the default is on.
17301730

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

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

3089-
This is not compatible with hugetlb_free_vmemmap. If
3090-
both parameters are enabled, hugetlb_free_vmemmap takes
3091-
precedence over memory_hotplug.memmap_on_memory.
3092-
30933093
memtest= [KNL,X86,ARM,M68K,PPC,RISCV] Enable memtest
30943094
Format: <integer>
30953095
default : 0 <disable>
@@ -5502,7 +5502,7 @@
55025502
cache (risks via metadata attacks are mostly
55035503
unchanged). Debug options disable merging on their
55045504
own.
5505-
For more information see Documentation/vm/slub.rst.
5505+
For more information see Documentation/mm/slub.rst.
55065506

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

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

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

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

55415541
slub_merge [MM, SLUB]
55425542
Same with slab_merge.

Documentation/admin-guide/mm/concepts.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ processor. Each bank is referred to as a `node` and for each node Linux
125125
constructs an independent memory management subsystem. A node has its
126126
own set of zones, lists of free and used pages and various statistics
127127
counters. You can find more details about NUMA in
128-
:ref:`Documentation/vm/numa.rst <numa>` and in
128+
:ref:`Documentation/mm/numa.rst <numa>` and in
129129
:ref:`Documentation/admin-guide/mm/numa_memory_policy.rst <numa_memory_policy>`.
130130

131131
Page cache

Documentation/admin-guide/mm/damon/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Monitoring Data Accesses
55
========================
66

7-
:doc:`DAMON </vm/damon/index>` allows light-weight data access monitoring.
7+
:doc:`DAMON </mm/damon/index>` allows light-weight data access monitoring.
88
Using DAMON, users can analyze the memory access patterns of their systems and
99
optimize those.
1010

@@ -14,3 +14,4 @@ optimize those.
1414
start
1515
usage
1616
reclaim
17+
lru_sort

0 commit comments

Comments
 (0)