mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 04:34:03 +02:00
docs: pagemap: fix flags location, member name and sample code
The userland visible page flags (KPF_*) were initially moved to include/linux/kernel-page-flags.h in commit1a9b5b7fe0("mm: export stable page flags"), and later moved to include/uapi/linux/kernel-page-flags.h in commit607ca46e97("UAPI: (Scripted) Disintegrate include/linux"). Update the doc to reflect the current location of these flags. The member @walk_end of struct pm_scan_arg {} was wrongly written as "end_walk". The first sample code of the PAGEMAP_SCAN ioctl wrongly used the PM_SCAN_CHECK_WPASYNC flag twice, instead of the PM_SCAN_WP_MATCHING flag. The second one included the wrong category in the required mask - PAGE_IS_FILE should be used instead of PAGE_IS_SWAPPED as per the intention. Fix them all together. Signed-off-by: Zenghui Yu <zenghui.yu@linux.dev> Reviewed-by: Lorenzo Stoakes <ljs@kernel.org> Reviewed-by: SeongJae Park <sj@kernel.org> Acked-by: David Hildenbrand (Arm) <david@kernel.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Message-ID: <20260626162710.25844-1-zenghui.yu@linux.dev>
This commit is contained in:
parent
d1bb650229
commit
711719631f
|
|
@ -67,7 +67,7 @@ number of times a page is mapped.
|
|||
* ``/proc/kpageflags``. This file contains a 64-bit set of flags for each
|
||||
page, indexed by PFN.
|
||||
|
||||
The flags are (from ``fs/proc/page.c``, above kpageflags_read):
|
||||
The flags are (from ``include/uapi/linux/kernel-page-flags.h``):
|
||||
|
||||
0. LOCKED
|
||||
1. ERROR
|
||||
|
|
@ -264,7 +264,7 @@ The ``struct pm_scan_arg`` is used as the argument of the IOCTL.
|
|||
provided or not.
|
||||
3. The range is specified through ``start`` and ``end``.
|
||||
4. The walk can abort before visiting the complete range such as the user buffer
|
||||
can get full etc. The walk ending address is specified in``end_walk``.
|
||||
can get full etc. The walk ending address is specified in ``walk_end``.
|
||||
5. The output buffer of ``struct page_region`` array and size is specified in
|
||||
``vec`` and ``vec_len``.
|
||||
6. The optional maximum requested pages are specified in the ``max_pages``.
|
||||
|
|
@ -275,7 +275,7 @@ Find pages which have been written and WP them as well::
|
|||
|
||||
struct pm_scan_arg arg = {
|
||||
.size = sizeof(arg),
|
||||
.flags = PM_SCAN_CHECK_WPASYNC | PM_SCAN_CHECK_WPASYNC,
|
||||
.flags = PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC,
|
||||
..
|
||||
.category_mask = PAGE_IS_WRITTEN,
|
||||
.return_mask = PAGE_IS_WRITTEN,
|
||||
|
|
@ -288,7 +288,7 @@ present or huge::
|
|||
.size = sizeof(arg),
|
||||
.flags = 0,
|
||||
..
|
||||
.category_mask = PAGE_IS_WRITTEN | PAGE_IS_SWAPPED,
|
||||
.category_mask = PAGE_IS_WRITTEN | PAGE_IS_FILE,
|
||||
.category_inverted = PAGE_IS_SWAPPED,
|
||||
.category_anyof_mask = PAGE_IS_PRESENT | PAGE_IS_HUGE,
|
||||
.return_mask = PAGE_IS_WRITTEN | PAGE_IS_SWAPPED |
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user