On Sun, 6 Nov 2022 at 20:38, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > [ Note: in quoting the patch below, I removed the '-' lines, so the > quoted part is really just all that remains after the patch ] > > On Sun, Nov 6, 2022 at 6:54 AM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote: > > > > + if (region_is_misaligned(md)) { > > + static bool __initdata code_is_misaligned; > > + > > /* > > + * Regions that are not aligned to the OS page size cannot be > > + * mapped with strict permissions, as those might interfere > > + * with the permissions that are needed by the adjacent > > + * region's mapping. However, if we haven't encountered any > > + * misaligned runtime code regions so far, we can safely use > > + * non-executable permissions for non-code regions. > > */ > > + code_is_misaligned |= (type == EFI_RUNTIME_SERVICES_CODE); > > + > > + return code_is_misaligned ? pgprot_val(PAGE_KERNEL_EXEC) > > + : pgprot_val(PAGE_KERNEL); > > + } > > Ok, this seems like a nice improvement, in how it only does > PAGE_KERNEL_EXEC if any of the regions end up being code. > > At the same time this is a much bigger change than just changing the > WARN_ONCE() to pr_warn_once(), so rather than me applying it directly > to my tree, I think I'd prefer it to go through the proper channels > and the usual way. > > I'll still apply it to my private "this is the tree I actually boot on > my M2" testing tree, since that has all the other Asahi patches too. > That way I won't see the warning myself on that machine. > > So "Acked-by" on the patch, and I hope I'll see it with a future arm64 > or EFI pull request (and I'll holler loudly if it actually causes any > issues on my M2, but I obviously don't expect it to) > Thanks for the ack. I'll drop it in the EFI fixes branch and let it soak in -next for the week.