On Tue, Dec 7, 2010 at 9:06 PM, Andreas Färber andreas.faerber@web.de wrote:
Hello,
With or without the pending ofmem patches, ppc64 boot currently hangs after "Trying cd:,\:tbxi..." (before "Trying cd:,\ppc\chrp\bootfile.exe..."). Symptom is, 0x700 program exception vector (not 0xfff00700) is being called with SRR1 pointing to some address that's neither in the low vectors range nor in OpenBIOS itself apparently. I noticed that branching relatively to unexpected_excep from there is wrong and patched it to bctr there (which unfortunately appears to break 32-bit ppc64), but usually it does not manage to properly do the printk()
Here's what I found out so far:
- a breakpoint for bootinfo_loader_init() or so is not reached
- The "Trying" comes from (encode-bootpath) in forth/debugging/client.fs
- `debug (encode-bootpath) boot` does not return from open-dev
- `debug open-dev` does not return from path-resolution
- path-resolution gets called "endlessly" (5+ times single-stepping it), the
hang occurred after successfully returning from some instance (after having successfully done so for a previous instance)
Does anyone have a hunch what might be going wrong? Or tips how to further debug?
Does running QEMU with flag -d in_asm,int reveal anything? How about recompiling with DEBUG_SOFTWARE_TLB in target-ppc/op_helper.c enabled?