Heya...
I have been dogged by hangs during the boot2 step, with frozen progress spinners.
I submitted a patch, which I notice made it into Rev 139 of the latest SVN repository. This fixed a problem reading extents that were beyond a 32-bit offset.
Things were working great for me, although the fix did not appear to help everyone with similar symptoms.
Well, this morning, my machine froze in a similar manner as before. Argh. I spent a grueling few hours tracking down and fixing the latest problem.
HFSGetDirEntry updates the dirIndex parameter with its result. However, the value it uses isn't a simple offset into the directory, or a pointer to a structure, but an offset in the hard disk (curNode * nodeSize + index). As we've seen with the ReadExtent thing, curNode*nodeSize is no longer guaranteed to fit into a "long."
In tracking this down, I spotted this value overflowing (as I half-suspected), due to my disk filling up, directories living at higher offsets on the disk. Once /System/Library/Extensions or any other boot-time file has its directory living beyond 2^32, you can no longer boot.
Unfortunately, sys.c's GetDirEntry, and the *GetDirEntry for other file systems all use "long *" for dirIndex.
I've updated hfs.c, sys.c, and boot2/drivers.c (which calls GetDirEntry) to all use long longs, as well as their associated header files. I've also updated msdos.c, nbp.c, and ufs.c (and the associated headers) to also use long longs (as they all use a common interface with hfs.c).
Warning: I have *not* tested my changes to the msdos/ufs file systems. But since they're simply stashing either an offset or a 32-bit pointer, and getting them back out, I believe my fixes should work.
My changes have allowed my system to once again boot properly. It might resolve some mysterious long-term hangs for others as well, with any luck.
Hopefully someone can review and further verify my changes work, do not introduce any bugs, and hopefully integrate them into the latest source.
Attached is a patch against r141, as well as a "boot2" compiled up with these changes. I hope it brings some relief to a few folks.

-d