modutils: using kallsyms when cross-compiling kernel

From: Roland Dreier (roland@topspin.com)
Date: Fri Jan 24 2003 - 19:51:42 EST


Hi, I'm trying to run kallsyms on x86 while cross-compiling a kernel
for PowerPC. I'd like to use the kksymoops patch for 2.4, and the
build process tries to call kallsyms. I had no problem building a
version of kallsyms (from modutils 2.4.22) that runs on x86 and is
targeted to PPC.

However, kallsyms seems to have endianness problems. Specifically,
when it runs on my kernel, the test of MATCH_MACHINE(f->header.e_machine)
in obj_load.c fails because EM_PPC is 0x14, but f->header.e_machine has
0x1400 in it.

Looking further in the code it looks like none of ELF handling stuff
takes endianness into account. For example, e_type is also
byte-swapped from what kallsyms is looking for.

Is my diagnosis correct? Is there any easy way for me to fix this (at
least enough so that I can build a PPC kernel on x86 with kkallsyms
support), or is the only solution to bite the bullet and fix the
modutils ELF code to be endianness clean?

Thanks,
  Roland
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Jan 31 2003 - 22:00:13 EST