There is probably a kernel misconfiguration somewhere. Could you post your .config, and maybe even your vmlinux somewhere where we can download it?
Also, you can use QEmu's GDB server in order to see exactly where your kernel stops executing. This should be much more comfortable than putting printfs into QEmu's code. If you don't know how it works, look here for a short explanation:
Alex.