On Thu, Mar 19, 2009 at 01:49:23AM +0100, Stefan Reinauer wrote: > Kevin O'Connor wrote: > > On Wed, Mar 18, 2009 at 02:17:57PM -0600, Myles Watson wrote: > > > >> I think the breakage is occurring before the payload executes, but I'm > >> not sure of that. > >> > >> qemu: fatal: Trying to execute code outside RAM or ROM at 0xf10002ba > >> > > > > The bug is in src/arch/i386/boot/boot.c. The inline assembly in > > jmp_to_elf_entry uses the "g" flag to pass in parameters. However, > > "g" allows gcc to use stack relative addressing of parameters. > > > > Does it? I could not find that in the GCC Inline Assembly FAQ.
Somewhere it says it can be an offsettable memory address. > Would changing the parameters to "m" solve the problem? I don't think so. Easiest fix would be to change "g" to "ri" - put the parameter either in a register or as an immediate value. -Kevin -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

