From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46466) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1buwfk-0001b6-SQ for qemu-devel@nongnu.org; Fri, 14 Oct 2016 03:12:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1buwfh-0007oZ-Jr for qemu-devel@nongnu.org; Fri, 14 Oct 2016 03:12:52 -0400 References: <1476375902-11715-1-git-send-email-lvivier@redhat.com> <1476375902-11715-4-git-send-email-lvivier@redhat.com> <20161014040751.GD28562@umbus> From: Laurent Vivier Message-ID: <5888966e-8f8e-fbee-6466-ea677abf352f@redhat.com> Date: Fri, 14 Oct 2016 09:12:44 +0200 MIME-Version: 1.0 In-Reply-To: <20161014040751.GD28562@umbus> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 03/20] target-ppc: move back cpu_exec_init() to init List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: David Gibson Cc: qemu-devel@nongnu.org, Paolo Bonzini , Peter Maydell , Eduardo Habkost , Bharata B Rao , Markus Armbruster , Matthew Rosato , Alexander Graf , qemu-ppc@nongnu.org On 14/10/2016 06:07, David Gibson wrote: > On Thu, Oct 13, 2016 at 06:24:45PM +0200, Laurent Vivier wrote: >> We have now the cpu_exec_realize() in realize, >> so the init part must be in init. >> >> As cpu_exec_unrealize() is called from cpu_common_finalize(), >> remove the call from ppc_cpu_unrealizefn(). >> >> CC: Bharata B Rao >> CC: Alexander Graf >> CC: qemu-ppc@nongnu.org >> Signed-off-by: Laurent Vivier >> --- >> target-ppc/translate_init.c | 4 +--- >> 1 file changed, 1 insertion(+), 3 deletions(-) >> >> diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c >> index 094f28a..bbca8b5 100644 >> --- a/target-ppc/translate_init.c >> +++ b/target-ppc/translate_init.c >> @@ -9678,7 +9678,6 @@ static void ppc_cpu_realizefn(DeviceState *dev, Error **errp) >> } >> #endif >> >> - cpu_exec_init(cs); >> cpu_exec_realize(cs, &local_err); >> if (local_err != NULL) { >> error_propagate(errp, local_err); >> @@ -9911,8 +9910,6 @@ static void ppc_cpu_unrealizefn(DeviceState *dev, Error **errp) >> opc_handler_t **table, **table_2; >> int i, j, k; >> >> - cpu_exec_unrealize(CPU(dev)); >> - > > This doesn't seem right. As you said in 0/20, cpu_exec_unrealize() is > called from cpu_common_finalize(). But finalize should mirror init, > not unrealize(). So it seems that unrealize() really should belong > here, not in finalize. OK, I was not sure for this part. So I guess I have to add an cpu_common_unrealize(). Thanks, Laurent