diff options
| author | Dev Jain <dev.jain@arm.com> | 2026-07-20 06:55:06 +0000 |
|---|---|---|
| committer | Andrew Morton <akpm@linux-foundation.org> | 2026-08-06 18:57:20 -0700 |
| commit | 4259767463b326261679718c09c58d44d1e9c4b6 (patch) | |
| tree | 7021d70c9d1d46293c4c84b288984ae46c43bbf5 /tools/perf/scripts/python/bin/task-analyzer-record | |
| parent | 5d72b5d76de37c4a3f50b3520d1486eb1024b446 (diff) | |
mm/memory: batch set uffd-wp markers during zapping
Enable batch setting of uffd-wp PTE markers.
The code paths passing nr > 1 to zap_install_uffd_wp_if_needed() produce
that nr through either folio_pte_batch() or swap_pte_batch(), therefore
batching is correct:
1) All PTEs belong to the same type of VMA: anonymous or non-anonymous,
wp-armed or non-wp-armed.
2) All PTEs are either marked with uffd-wp or not marked with uffd-wp;
the same applies to the pte_swp_uffd_any() check.
3) uffd_supports_wp_marker() is independent of the function parameters.
Use set_pte_at() in a loop instead of set_ptes(), because set_ptes()
cannot handle nonpresent to nonpresent conversion for nr_pages > 1.
Rename the helper to cond_install_uffd_wp_ptes().
Link: https://lore.kernel.org/20260720065508.2695106-3-dev.jain@arm.com
Signed-off-by: Dev Jain <dev.jain@arm.com>
Acked-by: David Hildenbrand (Arm) <david@kernel.org>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Axel Rasmussen <axelrasmussen@google.com>
Cc: Barry Song <baohua@kernel.org>
Cc: Harry Yoo <harry@kernel.org>
Cc: Jann Horn <jannh@google.com>
Cc: Kairui Song <kasong@tencent.com>
Cc: Lance Yang <lance.yang@linux.dev>
Cc: Liam R. Howlett <liam@infradead.org>
Cc: Lorenzo Stoakes <ljs@kernel.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Rik van Riel <riel@surriel.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Shakeel Butt <shakeel.butt@linux.dev>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@kernel.org>
Cc: Wei Xu <weixugc@google.com>
Cc: Yuanchu Xie <yuanchu@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'tools/perf/scripts/python/bin/task-analyzer-record')
0 files changed, 0 insertions, 0 deletions
