kernel_optimize_test/Documentation/vm
Anshuman Khandual 27634d63ca mm/debug_vm_pgtable/basic: add validation for dirtiness after write protect
[ Upstream commit bb5c47ced46797409f4791d0380db3116d93134c ]

Patch series "mm/debug_vm_pgtable: Some minor updates", v3.

This series contains some cleanups and new test suggestions from Catalin
from an earlier discussion.

https://lore.kernel.org/linux-mm/20201123142237.GF17833@gaia/

This patch (of 2):

This adds validation tests for dirtiness after write protect conversion
for each page table level.  There are two new separate test types involved
here.

The first test ensures that a given page table entry does not become dirty
after pxx_wrprotect().  This is important for platforms like arm64 which
transfers and drops the hardware dirty bit (!PTE_RDONLY) to the software
dirty bit while making it an write protected one.  This test ensures that
no fresh page table entry could be created with hardware dirty bit set.
The second test ensures that a given page table entry always preserve the
dirty information across pxx_wrprotect().

This adds two previously missing PUD level basic tests and while here
fixes pxx_wrprotect() related typos in the documentation file.

Link: https://lkml.kernel.org/r/1611137241-26220-1-git-send-email-anshuman.khandual@arm.com
Link: https://lkml.kernel.org/r/1611137241-26220-2-git-send-email-anshuman.khandual@arm.com
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Suggested-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Gerald Schaefer <gerald.schaefer@de.ibm.com> [s390]
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Steven Price <steven.price@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-07-14 16:56:13 +02:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
active_mm.rst docs/vm: fix 'mm_count' vs 'mm_users' counter confusion 2020-10-13 18:38:32 -07:00
arch_pgtable_helpers.rst mm/debug_vm_pgtable/basic: add validation for dirtiness after write protect 2021-07-14 16:56:13 +02:00
balance.rst
cleancache.rst
free_page_reporting.rst mm/page_reporting: add free page reporting documentation 2020-04-07 10:43:39 -07:00
frontswap.rst
highmem.rst
hmm.rst mm/doc: fix a literal block markup 2020-10-16 07:28:20 +02:00
hugetlbfs_reserv.rst
hwpoison.rst
index.rst docs: add some new files to their respective index.rst files 2020-09-10 10:48:20 -06:00
ksm.rst docs: get rid of :c:type explicit declarations for structs 2020-10-15 07:49:40 +02:00
memory-model.rst docs: get rid of :c:type explicit declarations for structs 2020-10-15 07:49:40 +02:00
mmu_notifier.rst docs/vm: trivial fixes to several spelling mistakes 2020-10-22 16:11:04 -06:00
numa.rst
overcommit-accounting.rst
page_frags.rst docs: vm: page_frags.rst: Fix the reference of stale function 2020-05-15 11:34:55 -06:00
page_migration.rst docs/vm: trivial fixes to several spelling mistakes 2020-10-22 16:11:04 -06:00
page_owner.rst docs/vm: trivial fixes to several spelling mistakes 2020-10-22 16:11:04 -06:00
remap_file_pages.rst
slub.rst mm/slub: clarify verification reporting 2021-06-23 14:42:53 +02:00
split_page_table_lock.rst
swap_numa.rst
transhuge.rst mmap locking API: convert mmap_sem comments 2020-06-09 09:39:14 -07:00
unevictable-lru.rst
z3fold.rst
zsmalloc.rst
zswap.rst zswap: docs/vm: Fix typo accept_threshold_percent in zswap.rst 2020-06-01 09:33:23 -06:00