On Tue, Mar 11, 2025 at 04:45:26PM +0100, David Woodhouse wrote:
On Thu, 2025-02-13 at 15:24 +0100, Greg Kroah-Hartman wrote:
6.13-stable review patch. If anyone has any objections, please let me know.
From: David Woodhouse dwmw@amazon.co.uk
[ Upstream commit 4b5bc2ec9a239bce261ffeafdd63571134102323 ]
Now that the following fix:
d0ceea662d45 ("x86/mm: Add _PAGE_NOPTISHADOW bit to avoid updating userspace page tables")
stops kernel_ident_mapping_init() from scribbling over the end of a 4KiB PGD by assuming the following 4KiB will be a userspace PGD, there's no good reason for the kexec PGD to be part of a single 8KiB allocation with the control_code_page.
( It's not clear that that was the reason for x86_64 kexec doing it that way in the first place either; there were no comments to that effect and it seems to have been the case even before PTI came along. It looks like it was just a happy accident which prevented memory corruption on kexec. )
Either way, it definitely isn't needed now. Just allocate the PGD separately on x86_64, like i386 already does.
No objection (which is just as well given how late I am in replying) but I'm just not sure *why*. This doesn't fix a real bug; it's just a cleanup.
Does this mean I should have written my original commit message better, to make it clearer that this *isn't* a bugfix?
Yes, that's why it was picked up.