On Fri, Oct 28, 2022 at 10:18:41AM +0800, Zenghui Yu wrote: > On 2022/8/26 20:00, Anders Roxell wrote: > > On 2021-03-10 11:23, Anshuman Khandual wrote: > > > From: James Morse <james.morse@xxxxxxx> > > > > > > As per ARM ARM DDI 0487G.a, when FEAT_LPA2 is implemented, ID_AA64MMFR0_EL1 > > > might contain a range of values to describe supported translation granules > > > (4K and 16K pages sizes in particular) instead of just enabled or disabled > > > values. This changes __enable_mmu() function to handle complete acceptable > > > range of values (depending on whether the field is signed or unsigned) now > > > represented with ID_AA64MMFR0_TGRAN_SUPPORTED_[MIN..MAX] pair. While here, > > > also fix similar situations in EFI stub and KVM as well. > > > > > > Cc: Catalin Marinas <catalin.marinas@xxxxxxx> > > > Cc: Will Deacon <will@xxxxxxxxxx> > > > Cc: Marc Zyngier <maz@xxxxxxxxxx> > > > Cc: James Morse <james.morse@xxxxxxx> > > > Cc: Suzuki K Poulose <suzuki.poulose@xxxxxxx> > > > Cc: Ard Biesheuvel <ardb@xxxxxxxxxx> > > > Cc: Mark Rutland <mark.rutland@xxxxxxx> > > > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > > > Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx > > > Cc: linux-efi@xxxxxxxxxxxxxxx > > > Cc: linux-kernel@xxxxxxxxxxxxxxx > > > Acked-by: Marc Zyngier <maz@xxxxxxxxxx> > > > Signed-off-by: James Morse <james.morse@xxxxxxx> > > > Signed-off-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> > > > > When building an arm64 defconfig kernel from stable/linux-5.10.y and > > booting that in QEMU (version: 1:7.0+dfsg-2~bpo11+2) with '-cpu max' the > > kernel doesn't boot. I don't get any output. The kernel boots fine if I > > change to '-cpu cortex-a72'. > > > > If I cherry-pick this patch to stable/linux-5.10.y I'm able too boot the > > kernel with '-cpu max'. > > You can workaround the kernel boot failure by specifying > '-cpu max,lpa2=off' [*] in the QEMU command line. > > > However, I'm not comfortable to backport this patch to older kernels > > since there are a lot of conflicts. > > Can someone help out to do the packport? > > Upstream commit 26f55386f964 ("arm64/mm: Fix __enable_mmu() for new > TGRAN range values") can still be applied cleanly on top of > linux-5.10.y. I can send it to <stable@xxxxxxxxxxxxxxx> if maintainers > are okay with the stable-5.10 backport. If you have a backport, please send it (and cc the original author/reviewers just to double-check that the backport is correct). Thanks. -- Catalin