[PATCH V2 0/7] mm: Use pxdp_get() for accessing page table entries

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This series converts all generic page table entries direct derefences via
pxdp_get() based helpers extending the changes brought in via the commit
c33c794828f2 ("mm: ptep_get() conversion"). First it does some platform
specific changes for m68k and x86 architecture.

This series has been build tested on multiple architecture such as x86,
arm64, powerpc, powerpc64le, riscv, and m68k etc.

Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: David Hildenbrand <david@xxxxxxxxxx>
Cc: Ryan Roberts <ryan.roberts@xxxxxxx>
Cc: "Mike Rapoport (IBM)" <rppt@xxxxxxxxxx>
Cc: Arnd Bergmann <arnd@xxxxxxxx>
Cc: x86@xxxxxxxxxx
Cc: linux-m68k@xxxxxxxxxxxxxxxxxxxx
Cc: linux-mm@xxxxxxxxx
Cc: linux-fsdevel@xxxxxxxxxxxxxxx
Cc: kasan-dev@xxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-perf-users@xxxxxxxxxxxxxxx
Cc: kasan-dev@xxxxxxxxxxxxxxxx

Changes in V2:

- Separated out PUD changes from P4D changes
- Updated the commit message for x86 patch per Dave
- Implemented local variable page table value caching when applicable
- Updated all commit messages regarding local variable caching

Changes in V1:

https://lore.kernel.org/all/20240913084433.1016256-1-anshuman.khandual@xxxxxxx/

Anshuman Khandual (7):
  m68k/mm: Change pmd_val()
  x86/mm: Drop page table entry address output from pxd_ERROR()
  mm: Use ptep_get() for accessing PTE entries
  mm: Use pmdp_get() for accessing PMD entries
  mm: Use pudp_get() for accessing PUD entries
  mm: Use p4dp_get() for accessing P4D entries
  mm: Use pgdp_get() for accessing PGD entries

 arch/m68k/include/asm/page.h          |  2 +-
 arch/x86/include/asm/pgtable-3level.h | 12 ++--
 arch/x86/include/asm/pgtable_64.h     | 20 +++---
 drivers/misc/sgi-gru/grufault.c       | 13 ++--
 fs/proc/task_mmu.c                    | 28 +++++----
 fs/userfaultfd.c                      |  6 +-
 include/linux/huge_mm.h               |  6 +-
 include/linux/mm.h                    |  6 +-
 include/linux/pgtable.h               | 49 +++++++++------
 kernel/events/core.c                  |  6 +-
 mm/gup.c                              | 43 ++++++-------
 mm/hmm.c                              |  2 +-
 mm/huge_memory.c                      | 90 +++++++++++++++------------
 mm/hugetlb.c                          | 10 +--
 mm/hugetlb_vmemmap.c                  |  4 +-
 mm/kasan/init.c                       | 38 +++++------
 mm/kasan/shadow.c                     | 12 ++--
 mm/khugepaged.c                       |  4 +-
 mm/madvise.c                          |  6 +-
 mm/mapping_dirty_helpers.c            |  2 +-
 mm/memory-failure.c                   | 14 ++---
 mm/memory.c                           | 71 +++++++++++----------
 mm/mempolicy.c                        |  4 +-
 mm/migrate.c                          |  4 +-
 mm/migrate_device.c                   | 10 +--
 mm/mlock.c                            |  6 +-
 mm/mprotect.c                         |  2 +-
 mm/mremap.c                           |  4 +-
 mm/page_table_check.c                 |  4 +-
 mm/page_vma_mapped.c                  |  6 +-
 mm/pagewalk.c                         | 10 +--
 mm/percpu.c                           |  8 +--
 mm/pgalloc-track.h                    |  6 +-
 mm/pgtable-generic.c                  | 30 ++++-----
 mm/ptdump.c                           |  8 +--
 mm/rmap.c                             | 10 +--
 mm/sparse-vmemmap.c                   | 10 +--
 mm/vmalloc.c                          | 58 +++++++++--------
 mm/vmscan.c                           |  6 +-
 39 files changed, 333 insertions(+), 297 deletions(-)

-- 
2.25.1





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux