diff options
-rw-r--r-- | purgatory/arch/ia64/purgatory-ia64.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/purgatory/arch/ia64/purgatory-ia64.c b/purgatory/arch/ia64/purgatory-ia64.c index bd54946..de71b98 100644 --- a/purgatory/arch/ia64/purgatory-ia64.c +++ b/purgatory/arch/ia64/purgatory-ia64.c @@ -222,7 +222,9 @@ patch_efi_memmap(struct kexec_boot_params *params, void flush_icache_range(char *start, unsigned long len) { - unsigned long i; + unsigned long i, addr; + addr = (unsigned long)start & ~31UL; + len += (unsigned long)start - addr; for (i = 0;i < len; i += 32) asm volatile("fc.i %0"::"r"(start + i):"memory"); asm volatile (";;sync.i;;":::"memory"); |