mbox series

[GIT,PULL] arm64 fixes for -rc5

Message ID 20250301212116.GA29069@willie-the-truck (mailing list archive)
State New
Headers show
Series [GIT,PULL] arm64 fixes for -rc5 | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes

Message

Will Deacon March 1, 2025, 9:21 p.m. UTC
Hi Linus,

Ryan's been hard at work finding and fixing mm bugs in the arm64 code,
so here's a small crop of fixes for -rc5. The main changes are to fix
our zapping of non-present PTEs for hugetlb entries created using the
contiguous bit in the page-table rather than a block entry at the level
above. Prior to these fixes, we were pulling the contiguous bit back out
of the PTE in order to determine the size of the hugetlb page but this
is clearly bogus if the thing isn't present and consequently both the
clearing of the PTE(s) and the TLB invalidation were unreliable.

Although the problem was found by code inspection, we really don't want
this sitting around waiting to trigger and the changes are CC'd to stable
accordingly.

Note that the diffstat looks a lot worse than it really is;
huge_ptep_get_and_clear() now takes a size argument from the core code
and so all the arch implementations of that have been updated in a
pretty mechanical fashion. The patches have been in linux-next without
problems and Andrew is aware that they're coming via arm64 [1].

Cheers, and please pull.

Will

[1] https://lore.kernel.org/all/20250205235219.3c3a4b968087d1386d708b04@linux-foundation.org/

--->8

The following changes since commit 0ad2507d5d93f39619fc42372c347d6006b64319:

  Linux 6.14-rc3 (2025-02-16 14:02:44 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes

for you to fetch changes up to eed6bfa8b28230382b797a88569f2c7569a1a419:

  arm64: hugetlb: Fix flush_hugetlb_tlb_range() invalidation level (2025-02-27 17:40:58 +0000)

----------------------------------------------------------------
arm64 fixes for -rc5

- Fix a sporadic boot failure due to incorrect randomization of the
  linear map on systems that support it

- Fix the zapping (both clearing the entries *and* invalidating the TLB)
  of hugetlb PTEs constructed using the contiguous bit

----------------------------------------------------------------
Ryan Roberts (4):
      arm64/mm: Fix Boot panic on Ampere Altra
      mm: hugetlb: Add huge page size param to huge_ptep_get_and_clear()
      arm64: hugetlb: Fix huge_ptep_get_and_clear() for non-present ptes
      arm64: hugetlb: Fix flush_hugetlb_tlb_range() invalidation level

 arch/arm64/include/asm/hugetlb.h     | 26 +++++++++++-----
 arch/arm64/mm/hugetlbpage.c          | 59 +++++++++++++++---------------------
 arch/arm64/mm/init.c                 |  7 +----
 arch/loongarch/include/asm/hugetlb.h |  6 ++--
 arch/mips/include/asm/hugetlb.h      |  6 ++--
 arch/parisc/include/asm/hugetlb.h    |  2 +-
 arch/parisc/mm/hugetlbpage.c         |  2 +-
 arch/powerpc/include/asm/hugetlb.h   |  6 ++--
 arch/riscv/include/asm/hugetlb.h     |  3 +-
 arch/riscv/mm/hugetlbpage.c          |  2 +-
 arch/s390/include/asm/hugetlb.h      | 16 +++++++---
 arch/s390/mm/hugetlbpage.c           |  4 +--
 arch/sparc/include/asm/hugetlb.h     |  2 +-
 arch/sparc/mm/hugetlbpage.c          |  2 +-
 include/asm-generic/hugetlb.h        |  2 +-
 include/linux/hugetlb.h              |  4 ++-
 mm/hugetlb.c                         |  4 +--
 17 files changed, 82 insertions(+), 71 deletions(-)

Comments

pr-tracker-bot@kernel.org March 1, 2025, 9:48 p.m. UTC | #1
The pull request you sent on Sat, 1 Mar 2025 21:21:16 +0000:

> git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/9d20040d71ede4c0e5fc6ae7aaa92788de1e713a

Thank you!