Andreas Färber wrote:
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?
Hi Andreas,
Do you mean path-resolution or (path-resolution)? IIRC (path-resolution) is called recursively for each level of the device so this could potentially happen depending upon the device tree.
The "cd:,\:tbxi" device is a reference to finding a file on a HFS file system with a particular filesystem label/type in the MacOS System folder to boot. So given that CONFIG_HFS and CONFIG_HFSP are set for PPC64, if you're trying to access a HFS file system then it should be hitting hfs_fs.c::hfs_files_open() or hfsp_fs.c::hfsp_files_open() - maybe there are some 64-bit related errors in the code there? Tracing through libopenbios/load.c may help here too.
Alternatively if this is not the case, you may be hitting some generic memory corruption. I had a similar error on SPARC64 with strange behaviour caused by the dictionary being accidentally overwritten.
HTH,
Mark.