Re: x86 embedded - Problem getting past 'move compressed kernel before decompression'

From: Graeme Russ
Date: Mon Mar 01 2010 - 15:00:13 EST


H. Peter Anvin wrote:
> On 03/01/2010 11:41 AM, Graeme Russ wrote:
>> H. Peter Anvin wrote:
>>> On 03/01/2010 03:56 AM, Graeme Russ wrote:
>>>> I have done a little more digging. By adding an ascii string before
>>>> relocated: label, I am able to determine that the int3 after the relocated:
>>>> label exists in bzImage at offset 0x1C3FD7
>>>>
>>>> EAX holds (for the jump) 0x5379d0 (different bzImage of course). The
>>>> contents of memory at this address is in bzImage at offset 0x1C09D7 - A
>>>> difference of 0x3600 (seems too even to be random)
>>>>
>>>> I'm obviously doing something hideously wrong, but what?
>>>>
>>> 0x3600 sounds like the size of the real-mode code in bzImage.
>>>
>> But what could I be doing to cause the miscalculation? From what I
>> understand, everything looks to be calculated at build time
>>
>
> If I were to guess, you loaded the entire bzImage into high memory,
> rather than just the PM portion thereof.
>
I which case I would not think I would be jumping to 0x100000 as the
entry-point for the 32-bit protocol (at a guess I would be jumping to 0x103600)

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