On 19 July 2012 15:13, Alexander Graf <ag...@suse.de> wrote: > On 07/19/2012 02:00 PM, Peter Maydell wrote: >> On 19 July 2012 12:43, Avi Kivity <a...@redhat.com> wrote: >>> Let's make them even more similar, by removing !in_kernel_irqchip. >> >> Mmm, I do rather want to just mandate use of the VGIC... >> (somebody will probably come along later and try to get A9 >> guests working with KVM acceleration but I don't think it >> will be me :-)) > > Heh. I would really like to keep the !in_kernel_irqchip path (so only an EXT > IRQ line exposed) available for PPC at least. It has helped tremendously in > the past to be able to just throw a few debug printfs into QEMU and/or > compare with TCG what's happening when things go wrong.
I think the difficulty here is that QEMU's in_kernel_irqchip test is being used for two things: * which APIC model etc should we use? * details of the synchronous vs asynchronous model (for instance whether halt is handled by cpus.c depends on this: cpu_thread_is_idle always returns false if kvm_irqchip_in_kernel()) because for x86 these two things happen for historical reasons to be in sync. The non-x86 architectures probably need to separate them out so that we are always using the 'asynchronous inject' model but may (architecture-dependent) allow the user to pick which irqchip model gets used. -- PMM