xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@linaro.org>
To: Eric Trudeau <etrudeau@broadcom.com>
Cc: "xen-devel (xen-devel@lists.xen.org)" <xen-devel@lists.xen.org>
Subject: Re: [XenARM] Moving Guest RAM address to other location than 0x80000000
Date: Wed, 09 Oct 2013 17:58:24 +0100	[thread overview]
Message-ID: <52558B30.70302@linaro.org> (raw)
In-Reply-To: <FF3E5629F9FF6745ADE4EE690CEC81AD2AD668FD@SJEXCHMB09.corp.ad.broadcom.com>

On 10/09/2013 05:34 PM, Eric Trudeau wrote:
>> -----Original Message-----
>> From: Julien Grall [mailto:julien.grall@linaro.org]
>> Sent: Wednesday, October 09, 2013 12:20 PM
>> To: Eric Trudeau
>> Cc: xen-devel (xen-devel@lists.xen.org)
>> Subject: Re: [Xen-devel] [XenARM] Moving Guest RAM address to other location
>> than 0x80000000
>>
>> On 10/09/2013 04:57 PM, Eric Trudeau wrote:
>>
>> Hi,
>>
>>> Can I move the Guest RAM address to something other than 0x80000000?
>>> I would like to move the Guest RAM to 0 if possible.
>>>
>>>
>>>
>>> I get a crash while creating the domain when I just change the following
>>> in tools/libxc/xc_dom_armzimageloader.c:
>>
>>
>>> #define GUEST_RAM_BASE 0x00000000 /* was 0x80000000 */
>>
>> Did you modify the guest DTS? If not, you need to fix the "reg" property
>> in memory node.
>>
> Yes, I have a memory region of 0 in the DT.
> 
> The crash is very early.  Could there be another code dependency on RAM starting at 0x80000000 (e.g. guest mapping)?

I don't see other dependencies in the code. Did you check that the jump
address is correct (dom->parms.virt_entry)?

> BTW:   xl destroy dom1 hangs when trying to destroy this guest.

That's normal, one of the CPU has received an non-handled hypervisor
trap that is result to an infinite loop in hyp mode for this CPU.
After few minutes you should see strange warning from the dom0 kernel.

I think we should correctly handle EC=0x20 (ie prefetch abort).

> 
> -------------------------------------------------------------------------------
> dom0 # xl create -c dom1.cfg

Can you paste the log of the following command?
xl -vvv create -c dom1.cfg

> Parsing config from dom1.cfg
> (XEN) physdev.c:57: dom1: gic_route_irq_to_guest mapped in IRQ 108
> (XEN) memory_map:add: dom1 gfn=0 mfn=0 nr=80000
> (XEN) memory_map:add: dom1 gfn=a0000 mfn=a0000 nr=20000
> (XEN) memory_map:add: dom1 gfn=f0000 mfn=f0000 nr=1000
> device vif1.0 entered promiscuous mode
> (XEN) Hypervisor Trap. HSR=0x80000006 EC=0x20 IL=0 Syndrome=6

It seems Xen received a prefetch abort, which means that the kernel is
trying to fetch an instruction in a non mapped address.

> Daemon running with PID 681(XEN) CPU3: Unexpected Trap: Hypervisor
> 
> (XEN) ----[ Xen-4.4-unstable  arm32  debug=y  Tainted:    C ]----
> (XEN) CPU:    3
> (XEN) PC:     ff7f4014

The PC address looks weird. Silly question, Did you try to boot the
guest with the current GUEST_RAM_BASE (ie 0x80000000)?

-- 
Julien Grall

      reply	other threads:[~2013-10-09 16:58 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-09 15:57 [XenARM] Moving Guest RAM address to other location than 0x80000000 Eric Trudeau
2013-10-09 16:19 ` Julien Grall
2013-10-09 16:34   ` Eric Trudeau
2013-10-09 16:58     ` Julien Grall [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52558B30.70302@linaro.org \
    --to=julien.grall@linaro.org \
    --cc=etrudeau@broadcom.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).