svn commit: r240249 - head/sys/boot/common
Andreas Tobler
andreast at FreeBSD.org
Sat Sep 8 20:00:32 UTC 2012
Author: andreast
Date: Sat Sep 8 20:00:31 2012
New Revision: 240249
URL: http://svn.freebsd.org/changeset/base/240249
Log:
Fix loading of kernel modules at boot time for powerpc64.
Reported by: Mathias Breuninger
MFC after: 1 week
Modified:
head/sys/boot/common/load_elf.c
Modified: head/sys/boot/common/load_elf.c
==============================================================================
--- head/sys/boot/common/load_elf.c Sat Sep 8 19:35:23 2012 (r240248)
+++ head/sys/boot/common/load_elf.c Sat Sep 8 20:00:31 2012 (r240249)
@@ -588,7 +588,7 @@ fake_modname(const char *name)
return fp;
}
-#if defined(__i386__) && __ELF_WORD_SIZE == 64
+#if (defined(__i386__) || defined(__powerpc__)) && __ELF_WORD_SIZE == 64
struct mod_metadata64 {
int md_version; /* structure version MDTV_* */
int md_type; /* type of entry MDT_* */
@@ -601,7 +601,7 @@ int
__elfN(parse_modmetadata)(struct preloaded_file *fp, elf_file_t ef)
{
struct mod_metadata md;
-#if defined(__i386__) && __ELF_WORD_SIZE == 64
+#if (defined(__i386__) || defined(__powerpc__)) && __ELF_WORD_SIZE == 64
struct mod_metadata64 md64;
#endif
struct mod_depend *mdepend;
@@ -626,7 +626,7 @@ __elfN(parse_modmetadata)(struct preload
v += ef->off;
else if (error != 0)
return (error);
-#if defined(__i386__) && __ELF_WORD_SIZE == 64
+#if (defined(__i386__) || defined(__powerpc__)) && __ELF_WORD_SIZE == 64
COPYOUT(v, &md64, sizeof(md64));
error = __elfN(reloc_ptr)(fp, ef, v, &md64, sizeof(md64));
if (error == EOPNOTSUPP) {
More information about the svn-src-head
mailing list