From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:52654) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RNYFs-0000a6-0J for qemu-devel@nongnu.org; Mon, 07 Nov 2011 18:05:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RNYFq-0006lo-H1 for qemu-devel@nongnu.org; Mon, 07 Nov 2011 18:05:27 -0500 Received: from mail-bw0-f45.google.com ([209.85.214.45]:57458) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RNYFp-0006lE-Q4 for qemu-devel@nongnu.org; Mon, 07 Nov 2011 18:05:26 -0500 Received: by bkbzu5 with SMTP id zu5so4779162bkb.4 for ; Mon, 07 Nov 2011 15:05:24 -0800 (PST) Date: Tue, 8 Nov 2011 00:05:21 +0100 From: "Edgar E. Iglesias" Message-ID: <20111107230521.GC14307@zapo> References: <4EB85FD7.2050004@eagerm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4EB85FD7.2050004@eagerm.com> Subject: Re: [Qemu-devel] clk_setup decl missing in virtex_init List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Michael Eager Cc: qemu-devel , Fabien Chouteau On Mon, Nov 07, 2011 at 02:46:47PM -0800, Michael Eager wrote: > The declaration of clk_setup is missing in > qemu/hw/virtex_ml507.c: > > static void virtex_init(ram_addr_t ram_size, > const char *boot_device, > const char *kernel_filename, > const char *kernel_cmdline, > const char *initrd_filename, const char *cpu_model) > { > ... > > ... > memset(clk_setup, 0, sizeof(clk_setup)); > > This SEGVs because clk_setup is an inline function defined in ppc.h. > (I presume that the linker generates an out-of-line copy.) > > It isn't clear what the declaration should be. In ppc405_uc.c, there > is a decl: > clk_setup_t clk_setup[PPC405EP_CLK_NB]; Hi the following patch seems to work on my side. Fabien, could you please see if this was your intention? It seems to be commit ddd1055b07fdfe488a22c2275adaca75f4206d30 that introduced the segfault. Cheers commit 8e95771e4afb6e91c30a53943118afef4631b919 Author: Edgar E. Iglesias Date: Tue Nov 8 00:00:55 2011 +0100 virtex: Remove memset of clk_setup clk_setup is now a function. Signed-off-by: Edgar E. Iglesias diff --git a/hw/virtex_ml507.c b/hw/virtex_ml507.c index d31a204..5ea0e60 100644 --- a/hw/virtex_ml507.c +++ b/hw/virtex_ml507.c @@ -202,7 +202,6 @@ static void virtex_init(ram_addr_t ram_size, cpu_model = "440-Xilinx"; } - memset(clk_setup, 0, sizeof(clk_setup)); env = ppc440_init_xilinx(&ram_size, 1, cpu_model, 400000000); qemu_register_reset(main_cpu_reset, env);