From: Julien Grall <julien.grall@arm.com>
To: Chenxiao Zhao <chenxiao.zhao@gmail.com>,
Xen Devel <xen-devel@lists.xen.org>,
Stefano Stabellini <sstabellini@kernel.org>,
Wei Liu <wei.liu2@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
Jan Beulich <JBeulich@suse.com>
Subject: Re: [Xen-users] Hypervisor trap when dumping register
Date: Wed, 25 May 2016 13:24:59 +0100 [thread overview]
Message-ID: <5745999B.9060306@arm.com> (raw)
In-Reply-To: <57458B80.8090700@arm.com>
On 25/05/16 12:24, Julien Grall wrote:
> (Move the thread to Xen-devel)
>
> On 26/05/16 02:47, Chenxiao Zhao wrote:
>> On 5/25/2016 2:37 AM, Julien Grall wrote:
>
> [...]
>
>> root@linaro-alip:~# (XEN) *** Serial input -> Xen (type 'CTRL-x' three
>> times to
>> switch input to DOM0)
>> (XEN) 'd' pressed -> dumping registers
>> (XEN)
>> (XEN) *** Dumping CPU0 host state: ***
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000245f10Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8Hypervisor Trap. HSR=0x96000007 EC=0x25
>> IL=1 Syndrome=0x7
>> (XEN) CPU0: Unexpected Trap: Hypervisor
>> (XEN) ----[ Xen-4.7.0-rc arm64 debug=y Tainted: C ]----
>> (XEN) CPU: 0
>> (XEN) PC: 0000000000231dc8
>
> I was able to reproduce it with the latest RC on Juno r2. I will
> investigate it.
The bisector fingered the patch:
commit 2aa925be84293b44ad587ed117184ace61b41dd6
Author: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Date: Thu Mar 10 16:35:50 2016 -0500
arm/x86: Use struct virtual_region to do bug, symbol, and (x86)
exception tables lookup.
During execution of the hypervisor we have two regions of
executable code - stext -> _etext, and _sinittext -> _einitext.
The later is not needed after bootup.
We also have various built-in macros and functions to search
in between those two swaths depending on the state of the system.
That is either for bug_frames, exceptions (x86) or symbol
names for the instruction.
With xSplice in the picture - we need a mechanism for new payloads
to searched as well for all of this.
Originally we had extra 'if (xsplice)...' but that gets
a bit tiring and does not hook up nicely.
This 'struct virtual_region' and virtual_region_list provide a
mechanism to search for the bug_frames, exception table,
and symbol names entries without having various calls in
other sub-components in the system.
Code which wishes to participate in bug_frames and exception table
entries search has to only use two public APIs:
- register_virtual_region
- unregister_virtual_region
to let the core code know.
If the ->lookup_symbol is not then the default internal symbol lookup
mechanism is used.
Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Julien Grall <julien.grall@arm.com> [ARM]
Acked-by: Jan Beulich <jbeulich@suse.com>
Release-acked-by: Wei Liu <wei.liu2@citrix.com>
Wei, can you consider to add this bug as a blocker?
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
prev parent reply other threads:[~2016-05-25 12:24 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CA+e=sbLjGHLxKW2OA9+U8y3LzBTOjD7bwXwa_rkyO8958mmM9Q@mail.gmail.com>
[not found] ` <203f955a-04d8-2f18-0fdd-a9c5cb6bc091@arm.com>
[not found] ` <CA+e=sbKRP07GqnyJtFyire1jpr9f-RcVroOKtyvJYveT=vJSDQ@mail.gmail.com>
[not found] ` <5745724B.8050109@arm.com>
[not found] ` <4d4e3960-a393-696a-4684-be2bb2a53197@gmail.com>
2016-05-25 11:24 ` [Xen-users] Hypervisor trap when dumping register Julien Grall
2016-05-25 12:24 ` 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=5745999B.9060306@arm.com \
--to=julien.grall@arm.com \
--cc=JBeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=chenxiao.zhao@gmail.com \
--cc=sstabellini@kernel.org \
--cc=wei.liu2@citrix.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.