From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53555) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XYaWc-0005M1-7Q for qemu-devel@nongnu.org; Mon, 29 Sep 2014 08:58:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XYaWU-0001K6-Ns for qemu-devel@nongnu.org; Mon, 29 Sep 2014 08:57:58 -0400 Received: from cantor2.suse.de ([195.135.220.15]:42051 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XYaWU-0001J1-Hl for qemu-devel@nongnu.org; Mon, 29 Sep 2014 08:57:50 -0400 Message-ID: <54295728.5080203@suse.de> Date: Mon, 29 Sep 2014 14:57:12 +0200 From: Alexander Graf MIME-Version: 1.0 References: <1411757235-29128-1-git-send-email-dslutz@verizon.com> <1411757235-29128-2-git-send-email-dslutz@verizon.com> <54291463.1080205@suse.de> <54293E24.3080205@redhat.com> <54294832.9060001@suse.de> <54294ECF.1040705@redhat.com> In-Reply-To: <54294ECF.1040705@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 1/1] xen-hvm.c: Add support for Xen access to vmport List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini , Don Slutz , qemu-devel@nongnu.org Cc: xen-devel@lists.xensource.com, Marcel Apfelbaum , "Michael S. Tsirkin" , Markus Armbruster , Anthony Liguori , =?windows-1252?Q?Andreas_F=E4rber?= , Stefano Stabellini On 29.09.14 14:21, Paolo Bonzini wrote: > Il 29/09/2014 13:53, Alexander Graf ha scritto: >> >> cpu_handle_ioreq() >> { >> ... >> >> if (req->type == IOPORT_REGISTERS_SYNCHRONIZED) { >> cpu->xen_vcpu_dirty = true; >> synchronize_xen_to_env(xenptr, cpu); >> } >> >> handle_ioreq(); >> >> if (req->type == IOPORT_REGISTERS_SYNCHRONIZED) { >> cpu->xen_vcpu_dirty = false; >> synchronize_env_to_xen(xenptr, cpu); >> } >> >> ... >> } >> >> void xen_cpu_synchronize_state(CPUState *cpu) >> { >> assert(cpu->xen_vcpu_dirty); >> } >> >> Then no changes to the vmport code would be necessary and this problems >> where some code path wants to do direct access to registers >> automatically tells us that things are broken. > > Yeah, that would be possible. You do not even need synchronize_state, > it seems to me that it introduces more complication for little gain. Well, it makes all accels behave the same and keep information always at a single entity (the env struct). I don't think the vmport code should have knowledge of a xen env struct. Alex