On Mon, 29 Jan 2007, Franck Bui-Huu wrote: > > The problem is __pa_symbol(&_end); the kernel is linked at > > 0xffffffff80xxxxxx, so subtracting a PAGE_OFFSET of 0xa800000000000000 > > does not do anything useful to this address at all. > > > > In my understanding, if your kernel is linked at 0xffffffff80xxxxxx, > you shouldn't have CONFIG_BUILD_ELF64 set. Well, the option used to select between 64-bit and 32-bit ELF for building 64-bit configurations. I can see it has been changed from its original meaning and it now only controls whether "-mno-explicit-relocs" is passed to the compiler or not, which is sort of useless and certainly does not match the intent nor what the description says. The 64-bit format is now used unconditionally and you can always pass such obscure options to the compiler on the make's command line, so instead of this fix I vote for complete removal of the BUILD_ELF64 option. Maciej