From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: Domain 0 crashed when booting OMAP5 uEVM Date: Thu, 15 Aug 2013 10:13:15 +0100 Message-ID: References: <20130812122452.GA21443@cbz-workstation> <5208D969.6090708@linaro.org> <20130813091007.GA16513@cbz-workstation> <1EA3C0D2-F1BB-4EC9-B154-DEA746D9F2BC@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1EA3C0D2-F1BB-4EC9-B154-DEA746D9F2BC@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Chen Baozi Cc: Ian Campbell , Andrii Anisov , "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org On 14 August 2013 13:38, Chen Baozi wrote: > > On Aug 14, 2013, at 5:55 PM, Julien Grall wrote: > >> On 14 August 2013 10:46, Chen Baozi wrote: >>> >>> On Aug 13, 2013, at 5:58 PM, Julien Grall wrote: >>> >>>> On 13 August 2013 10:36, Andrii Anisov wrote: >>>>> disable printings from LK decompressor (it writes directly to omap debug >>>>> UART3, and if you give it to xen and don't map to Dom0 - will have data >>>>> abort) >>>> >>>> With Chen's patch series and the latest Xen, you don't need to disable >>>> LK decompressor. >>>> Xen has a basic emulation for "stolen" UART. >>> >>> BTW, does it mean that we don't need to set the UART status "disabled" in DTS? >> >> Unfortunately, no. The UART emulation is too simple to handle the real driver. >> I'm currently preparing a patch series which will remove this hack in the DTS. > > Another question. > > Before I saw Linux booting message, there is a line of message: > > (XEN) vgic.c:435:d0 vGICD: GICD_SGIR write r=fe0000 vcpu_mask=fe, wrong CPUTargetList > > Is it a big issue for booting dom0? I don't think so. Linux is trying to send an SGI to a non-running VCPU. I'm curious to know why Linux is trying to do this. Can you try to apply the patch below and paste dom0 output log? ============================================================ diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index ee7c503..73161cc 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -652,6 +652,9 @@ void gic_raise_softirq(const struct cpumask *mask, unsigned int irq) for_each_cpu(cpu, mask) map |= gic_cpu_map[cpu]; + if ( map == 0xfe ) + dump_stack(); + /* * Ensure that stores to Normal memory are visible to the * other CPUs before issuing the IPI. ============================================================ -- Julien Grall