Linux EFI development
 help / color / mirror / Atom feed
* [PATCH v1 0/3] x86/boot: Supply boot_param in rdi instead of rsi from startup_64()
@ 2025-06-23  8:14 Khalid Ali
  2025-06-23 12:33 ` Brian Gerst
  0 siblings, 1 reply; 8+ messages in thread
From: Khalid Ali @ 2025-06-23  8:14 UTC (permalink / raw)
  To: tglx, mingo, bp, dave.hansen, ubizjak
  Cc: x86, hpa, linux-efi, linux-kernel, Khalid Ali

From: Khalid Ali <khaliidcaliy@gmail.com>

The current kernel entry point takes one argument which is boot_param
from RSI. The only argument entry point recieves is pointer to
boot_param.

In order to comply with the ABI calling convension the entry point must
recieve the boot_param from RDI instead of RSI. There were no specific
use case used for RDI, so the kernel can safely recieve argument from
that register to better comply with ABI.

This patch makes the kernel to recieve boot_param which is the only
argument it recieves, from RDI instead of RSI. All changes needed for
stability and clarity have being changed.

Changelog:
 * Kernel uncompressed entry point expects boot_param from RDI instead
   of RSI.
 * The decompressor has being adjusted to supply argument from RDI
   instead RSI.
 * libstub has being adjusted to supply argument from RDI instead of RSI.

After throughly tested there were no regression and UDs has being
observed. Looking forward for feedback.

 arch/x86/boot/compressed/head_64.S      | 2 +-
 arch/x86/kernel/head_64.S               | 4 ++--
 drivers/firmware/efi/libstub/x86-stub.c | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

-- 
2.49.0


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-06-24  0:49 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-23  8:14 [PATCH v1 0/3] x86/boot: Supply boot_param in rdi instead of rsi from startup_64() Khalid Ali
2025-06-23 12:33 ` Brian Gerst
2025-06-23 16:29   ` Khalid Ali
2025-06-23 18:19     ` H. Peter Anvin
2025-06-23 18:39       ` Khalid Ali
2025-06-23 19:24         ` Brian Gerst
2025-06-24  0:43           ` H. Peter Anvin
2025-06-24  0:49         ` H. Peter Anvin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox