From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KCKjV-0002n5-MJ for qemu-devel@nongnu.org; Fri, 27 Jun 2008 16:39:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KCKjU-0002mA-5Q for qemu-devel@nongnu.org; Fri, 27 Jun 2008 16:39:49 -0400 Received: from [199.232.76.173] (port=48157 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KCKjT-0002m0-Q3 for qemu-devel@nongnu.org; Fri, 27 Jun 2008 16:39:47 -0400 Received: from mx1.redhat.com ([66.187.233.31]:55927) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KCKjU-0007yt-1n for qemu-devel@nongnu.org; Fri, 27 Jun 2008 16:39:48 -0400 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id m5RKdlTl014198 for ; Fri, 27 Jun 2008 16:39:47 -0400 Received: from pobox-2.corp.redhat.com (pobox-2.corp.redhat.com [10.11.255.15]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m5RKdk1C005505 for ; Fri, 27 Jun 2008 16:39:46 -0400 Received: from localhost.localdomain (vpn-4-80.str.redhat.com [10.32.4.80]) by pobox-2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m5RKdadb004563 for ; Fri, 27 Jun 2008 16:39:45 -0400 From: Glauber Costa Date: Fri, 27 Jun 2008 17:38:06 -0300 Message-Id: <1214599103-13846-4-git-send-email-gcosta@redhat.com> In-Reply-To: <1214599103-13846-3-git-send-email-gcosta@redhat.com> References: <1214599103-13846-1-git-send-email-gcosta@redhat.com> <1214599103-13846-2-git-send-email-gcosta@redhat.com> <1214599103-13846-3-git-send-email-gcosta@redhat.com> Subject: [Qemu-devel] [PATCH 03/20] init env made accel driver 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 --- accel.h | 8 ++++++++ kqemu.c | 1 + target-i386/helper.c | 6 +++--- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/accel.h b/accel.h index e16ca69..da66cd5 100644 --- a/accel.h +++ b/accel.h @@ -1,5 +1,6 @@ typedef struct QEMUAccel { void (*cpu_interrupt)(CPUState *env); + void (*init_env)(CPUState *env); } QEMUAccel; extern QEMUAccel *current_accel; @@ -14,3 +15,10 @@ static inline void accel_cpu_interrupt(CPUState *env) if (current_accel && current_accel->cpu_interrupt) current_accel->cpu_interrupt(env); } + +static inline void accel_init_env(CPUState *env) +{ + if (current_accel && current_accel->init_env) + current_accel->init_env(env); +} + diff --git a/kqemu.c b/kqemu.c index 87c06cd..4759bf3 100644 --- a/kqemu.c +++ b/kqemu.c @@ -249,6 +249,7 @@ void kqemu_init_env(CPUState *env) QEMUAccel kqemu_accel = { .cpu_interrupt = kqemu_cpu_interrupt, + .init_env = kqemu_init_env, }; diff --git a/target-i386/helper.c b/target-i386/helper.c index 2834171..4febc45 100644 --- a/target-i386/helper.c +++ b/target-i386/helper.c @@ -30,6 +30,8 @@ #include "svm.h" #include "qemu-common.h" +#include "accel.h" + //#define DEBUG_MMU static int cpu_x86_register (CPUX86State *env, const char *cpu_model); @@ -112,9 +114,7 @@ CPUX86State *cpu_x86_init(const char *cpu_model) return NULL; } cpu_reset(env); -#ifdef USE_KQEMU - kqemu_init_env(env); -#endif + accel_init_env(env); return env; } -- 1.5.5.1