From 123f9c50eba449451e4f1891e1f80505ec7678c3 Mon Sep 17 00:00:00 2001 From: Vladimir 'phcoder' Serbinenko Date: Sat, 3 Mar 2012 20:53:54 +0100 Subject: [PATCH] Fix FTBFS on mips and ppc --- grub-core/lib/mips/relocator.c | 2 +- grub-core/lib/powerpc/relocator.c | 2 +- grub-core/lib/relocator.c | 3 +++ grub-core/loader/mips/linux.c | 2 +- grub-core/loader/multiboot.c | 4 ++++ 5 files changed, 10 insertions(+), 3 deletions(-) diff --git a/grub-core/lib/mips/relocator.c b/grub-core/lib/mips/relocator.c index 537b0af2c..9d5f49cb9 100644 --- a/grub-core/lib/mips/relocator.c +++ b/grub-core/lib/mips/relocator.c @@ -124,7 +124,7 @@ grub_relocator32_boot (struct grub_relocator *rel, (0xffffffff - stateset_size) + 1, stateset_size, sizeof (grub_uint32_t), - GRUB_RELOCATOR_PREFERENCE_NONE); + GRUB_RELOCATOR_PREFERENCE_NONE, 0); if (err) return err; diff --git a/grub-core/lib/powerpc/relocator.c b/grub-core/lib/powerpc/relocator.c index 85dfbeaf3..bdf2b111b 100644 --- a/grub-core/lib/powerpc/relocator.c +++ b/grub-core/lib/powerpc/relocator.c @@ -119,7 +119,7 @@ grub_relocator32_boot (struct grub_relocator *rel, (0xffffffff - stateset_size) + 1, stateset_size, sizeof (grub_uint32_t), - GRUB_RELOCATOR_PREFERENCE_NONE); + GRUB_RELOCATOR_PREFERENCE_NONE, 0); if (err) return err; diff --git a/grub-core/lib/relocator.c b/grub-core/lib/relocator.c index aa4a39ebc..4024902c6 100644 --- a/grub-core/lib/relocator.c +++ b/grub-core/lib/relocator.c @@ -1409,6 +1409,9 @@ grub_relocator_alloc_chunk_align (struct grub_relocator *rel, #ifdef GRUB_MACHINE_EFI grub_efi_mmap_iterate (hook, avoid_efi_boot_services); +#elif defined (__powerpc__) + (void) avoid_efi_boot_services; + grub_machine_mmap_iterate (hook); #else (void) avoid_efi_boot_services; grub_mmap_iterate (hook); diff --git a/grub-core/loader/mips/linux.c b/grub-core/loader/mips/linux.c index eddfb293c..2b7df0a78 100644 --- a/grub-core/loader/mips/linux.c +++ b/grub-core/loader/mips/linux.c @@ -479,7 +479,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + linux_size + 0x10000, (0x10000000 - size), size, 0x10000, - GRUB_RELOCATOR_PREFERENCE_NONE); + GRUB_RELOCATOR_PREFERENCE_NONE, 0); if (err) goto fail; diff --git a/grub-core/loader/multiboot.c b/grub-core/loader/multiboot.c index dd5057241..fcdf5ffed 100644 --- a/grub-core/loader/multiboot.c +++ b/grub-core/loader/multiboot.c @@ -134,7 +134,11 @@ grub_multiboot_boot (void) return err; #endif +#if defined (__i386__) || defined (__x86_64__) grub_relocator32_boot (grub_multiboot_relocator, state, 0); +#else + grub_relocator32_boot (grub_multiboot_relocator, state); +#endif /* Not reached. */ return GRUB_ERR_NONE;