ron minnich wrote:
One caveat I discovered, I could never get Linux to boot with a gdt located higher than 1M. So even if you put a linux compatible gdt high, it has to be moved to ram < 1M or linux hangs on boot. Never figured out why (true for 2.4 anyway).
we're not seeing this. We have GDTs in very high memory and it all works. Interesting.
Hmm... are you sure? I tested this many times, and it was also reported on the Xbox project as well. Since Eric put in c_start.S, it has been located in RAM < 1M (moved with the C code), but I don't know how v2 is doing it, haven't looked at it. The latest kernel I tested was 2.4.18 I believe. I have never gotten the kernel to boot with the gdt in flash, where the addresses were just under 4G. And it doesn't seem to have anything to do with the RO nature of flash.
-Steve