Part of the problem is that the multiboot kernel's header claims that the file is "a.out kludge", but really is ELF (someone probably copy&pasted example code too eagerly). PatrickGeorgi reported it with them, see http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6691145