On Tue, 2025-08-26 at 10:58 +1200, Kai Huang wrote: > During kexec, the kernel jumps to the new kernel in relocate_kernel(), > which is implemented in assembly and both 32-bit and 64-bit have their > own version. > > Currently, for both 32-bit and 64-bit, the last two parameters of the > relocate_kernel() are both 'unsigned int' but actually they only convey > a boolean, i.e., one bit information. The 'unsigned int' has enough > space to carry two bits information therefore there's no need to pass > the two booleans in two separate 'unsigned int'. > > Consolidate the last two function parameters of relocate_kernel() into a > single 'unsigned int' and pass flags instead. > > Only consolidate the 64-bit version albeit the similar optimization can > be done for the 32-bit version too. Don't bother changing the 32-bit > version while it is working (since assembly code change is required). > > Signed-off-by: Kai Huang <kai.huang@xxxxxxxxx> > Reviewed-by: Tom Lendacky <thomas.lendacky@xxxxxxx> > Reviewed-by: Borislav Petkov (AMD) <bp@xxxxxxxxx> Reviewed-by: David Woodhouse <dwmw@xxxxxxxxxxxx>
Attachment:
smime.p7s
Description: S/MIME cryptographic signature