From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=40403 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pmrnq-00041h-10 for qemu-devel@nongnu.org; Tue, 08 Feb 2011 12:56:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pmrnn-0006lT-Jt for qemu-devel@nongnu.org; Tue, 08 Feb 2011 12:56:37 -0500 Received: from mail-gy0-f173.google.com ([209.85.160.173]:38621) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PmrD9-0000xl-Vw for qemu-devel@nongnu.org; Tue, 08 Feb 2011 12:18:44 -0500 Received: by gye5 with SMTP id 5so2627665gye.4 for ; Tue, 08 Feb 2011 09:18:43 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Tue, 8 Feb 2011 18:18:17 +0100 Message-Id: <1297185509-20996-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [CFT PATCH 00/12] Tricky parts of my iothread-for-win32 stuff List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Ok, so let's start the dance... These are the generic parts of the iothread-for-win32 work I made last year, rebased to today's qemu (qemu-kvm.git/uq/master merged with qemu.git/master, because it conflicts with some patches from Jan). I never tested them too much, and that's one of the reasons why I never submitted the stuff. Perhaps with some help they can make it this time. Testing I made now is still a bit limited, but the patches can boot RHEL and Fedora under both Windows iothread and Linux iothread. FWIW, under Wine I need iothread to boot Linux. The main idea is to replace timedwaits with waits. First because the timedwaits were such only out of laziness; second because timedwait is a pain to implement for Win32 where we have to manually implement condvars. Anthony Liguori (1): io-thread: make sure to initialize qemu_work_cond and qemu_cpu_cond Paolo Bonzini (11): cris, microblaze: use cpu_has_work inline cpu_halted into sole caller change qemu_thread_equal API to always compare with current thread always qemu_cpu_kick after unhalting a cpu exit round-robin vcpu loop if cpu->stopped is true always signal pause_cond after stopping a VCPU do not use timedwait on qemu_halt_cond do not use timedwait on qemu_system_cond do not use timedwait on qemu_pause_cond do not use timedwait on qemu_cpu_cond iothread stops the vcpu thread via IPI cpu-defs.h | 1 + cpu-exec.c | 9 +++++++-- cpus.c | 38 +++++++++++++++++++------------------- hw/apic.c | 1 + hw/ppc.c | 2 ++ hw/sun4m.c | 11 +++++++++-- hw/sun4u.c | 4 ++-- qemu-thread.c | 4 ++-- qemu-thread.h | 2 +- target-alpha/exec.h | 11 ----------- target-arm/exec.h | 13 ------------- target-cris/exec.h | 13 ------------- target-i386/exec.h | 12 ------------ target-m68k/exec.h | 10 ---------- target-microblaze/exec.h | 13 ------------- target-mips/exec.h | 11 ----------- target-ppc/exec.h | 11 ----------- target-s390x/exec.h | 12 ------------ target-s390x/kvm.c | 1 + target-sh4/cpu.h | 1 - target-sh4/exec.h | 11 ----------- target-sparc/exec.h | 10 ---------- 22 files changed, 45 insertions(+), 156 deletions(-) -- 1.7.3.5