"H. Peter Anvin" <[EMAIL PROTECTED]> writes: > Jeremy Fitzhardinge wrote: >> >> Yes, that's more or less the same code, aside from using 0x40(%esi) as a >> stack. Would that be OK here? >> > > I saw the 0x40(%esi) stack stuff, and I'm utterly puzzled by it. There > is no reason one can't set up %esp to point to a hunk in ordinary memory > and use it?
That is what we are doing, remind me to make certain we have this field of the boot protocol documented as permanently reserved for this. This comes from the relocatable kernel patches where we run the kernel where the bootloader chooses to put it assuming we are >= 1M. The problem is that we don't have any IP relative data access instructions, we don't have a stack, and so the only valid address that we know is valid is %esi. Once we compute where we are running we can setup a base address register and a stack and everything is easy, but the bootstrap to figure out where we are is just a little tricky. Eric - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/