Thank you! But this is not a big thing.
1. It seems qemu guys think it's funny to mess around a lot with the MachineClass interface Here are the patches
for specific qemu versions I've tested with. At 2.10.50 it was the min_cpus field that caused trouble for me, not the 'ignore...' one. I've tested with all kernels in my tutorials, and others had reported them working as well. Frankly I've never even tried linux because I was aware of the missing peripheral emulation. This patch (which only adds booting support) is just the first step on a long way to run an AArch64 linux kernel under qemu.
2. This patch only changes the firmware address and the cpu type, does nothing more. As such it should not have any performance impact at all, unless there's already a bug in Cortex-A53 emu code somewhere. I suggest to try adding '-d int' to qemu arguments. I've noticed that qemu does not handle exceptions in exception handlers well (there's no such thing on AArch64 like triple fault on x86). If the problem for example is exception handler code not being mapped properly, that would result in an endless Instruction Fetch Abort loop. That could lead to 90% cpu usage, but this is just a guess. My other guess would be the aforementioned peripheral emulation, namely the missing System Timer. As it's MMIO register reads as a constant zero, a naive delay() loop could end up in an infinite loop easily. See my delay tutorial on how to workaround this.
Hopefully Pekka will manage to submit the patch into mainline soon. If the qemu maintainers would have accepted my boot patch, I would have been working on the peripherals support by now. But no, instead they convinced me that I don't want to do anything with them any more. C'la vie!