|
@@ -11,6 +11,7 @@
|
|
|
*/
|
|
|
#include <linux/efi.h>
|
|
|
#include <asm/efi.h>
|
|
|
+#include <asm/memory.h>
|
|
|
#include <asm/sections.h>
|
|
|
#include <asm/sysreg.h>
|
|
|
|
|
@@ -81,9 +82,10 @@ efi_status_t handle_kernel_image(efi_system_table_t *sys_table_arg,
|
|
|
/*
|
|
|
* If CONFIG_DEBUG_ALIGN_RODATA is not set, produce a
|
|
|
* displacement in the interval [0, MIN_KIMG_ALIGN) that
|
|
|
- * is a multiple of the minimal segment alignment (SZ_64K)
|
|
|
+ * doesn't violate this kernel's de-facto alignment
|
|
|
+ * constraints.
|
|
|
*/
|
|
|
- u32 mask = (MIN_KIMG_ALIGN - 1) & ~(SZ_64K - 1);
|
|
|
+ u32 mask = (MIN_KIMG_ALIGN - 1) & ~(EFI_KIMG_ALIGN - 1);
|
|
|
u32 offset = !IS_ENABLED(CONFIG_DEBUG_ALIGN_RODATA) ?
|
|
|
(phys_seed >> 32) & mask : TEXT_OFFSET;
|
|
|
|