From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LPgSc-0001ab-5K for qemu-devel@nongnu.org; Wed, 21 Jan 2009 12:01:50 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LPgSY-0001Zs-13 for qemu-devel@nongnu.org; Wed, 21 Jan 2009 12:01:49 -0500 Received: from [199.232.76.173] (port=51296 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LPgSX-0001Zo-Sy for qemu-devel@nongnu.org; Wed, 21 Jan 2009 12:01:45 -0500 Received: from mail-bw0-f21.google.com ([209.85.218.21]:56778) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LPgSX-0004A3-8x for qemu-devel@nongnu.org; Wed, 21 Jan 2009 12:01:45 -0500 Received: by bwz14 with SMTP id 14so12786908bwz.10 for ; Wed, 21 Jan 2009 09:01:42 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <49770BB6.9050707@eu.citrix.com> References: <49770BB6.9050707@eu.citrix.com> Date: Wed, 21 Jan 2009 19:01:42 +0200 Message-ID: Subject: Re: [Qemu-devel] ppc emulation and interrupts From: Blue Swirl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org On 1/21/09, Stefano Stabellini wrote: > Hi all, > one of the recent problems, noticed after the displaystate change, > affects ppc emulation only and is due to the fact that none on ppc > emulation is issuing any interrupt request of the CPU_INTERRUPT_EXIT > kind if the gui timer is disabled. > Hence qemu never leaves the loop in cpu-exec.c:cpu_exec. > If the gui timer is enabled qemu is able to leave the loop because the > condition (interrupt_request & CPU_INTERRUPT_EXIT) is true when the > timer is triggered. > I think this is a problem with the ppc emulation but if you ppc guys > need the gui timer to be always on, I can arrange for it to be. > Regards, It's not only PPC problem, Sparc64 with -nographic never exits cpu loop because no timers are running. Serial input does not work, because IO does not cause exit from cpu loop. We could add a dummy timer just to exit the cpu loop, but that's a bit ugly. I think SIGIO was discussed at some point, but rejected. Would it be very hard to move to the IO thread model?