Re: Problem with 1G RAM

Jamie Lokier (lkd@tantalophile.demon.co.uk)
Sun, 6 Dec 1998 14:49:57 +0000


On Sat, Dec 05, 1998 at 07:48:45PM +0100, Jakub Jelinek wrote:
> on Intel, you'd
> #define PAGE_OFFSET (&__nonexistant_page_offset_object)
> then partially link the kernel (you'll get a bunch of undefined relocations
> to the __npoo). Then, you just record all the places where such undefined
> relocation happens, in the linker script define
> __nonexistant_page_offset_object to 0xC0000000 and link again.
> At runtime you just relocate what you've recorded. I think there will be at
> most two different reloc types for it, if not only one, so it will be really
> easy.

Very nice. I was thinking of something more straightforward, an __asm__
macro, but your method will optimise much better. With your method, GCC
could continue to optimise away calls like __va(__pa(addr)).

-- Jamie

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