From: Ian Campbell <ian.campbell@citrix.com>
To: Julien Grall <julien.grall@citrix.com>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
Shannon Zhao <zhaoshenglong@huawei.com>
Cc: xen-devel@lists.xenproject.org
Subject: Re: unhandled word causes Xen crash with recent Linux kernels, was: Re: [PATCH v2 05/11] xen/arm: vgic: Properly emulate the full register
Date: Mon, 30 Nov 2015 12:38:29 +0000 [thread overview]
Message-ID: <1448887109.15768.33.camel@citrix.com> (raw)
In-Reply-To: <565C3F6E.1090005@citrix.com>
On Mon, 2015-11-30 at 12:22 +0000, Julien Grall wrote:
> Hi Ian,
>
> On 25/11/15 12:26, Ian Campbell wrote:
> > On Wed, 2015-11-25 at 12:15 +0000, Stefano Stabellini wrote:
> > > On Wed, 25 Nov 2015, Shannon Zhao wrote:
> > > > Upstream Linux kernel applies below patch which will write
> > > > GICD_ICACTIVER. But since Xen doesn't support it, so it will cause
> > > > Dom0
> > > > initializes GIC failed.
> > > >
> > > > 0eece2b22849c90b730815c893425a36b9d10fd5 (irqchip/gic: Make sure
> > > > all
> > > > interrupts are deactivated at boot)
> > > >
> > > > (XEN) d0v0: vGICD: unhandled word write 0xffffffff to ICACTIVER4
> > > > (XEN) traps.c:2447:d0v0 HSR=0x93860046 pc=0xffffffc0008d63f0
> > > > gva=0xffffff8000004384 gpa=0x0000002f000384
> > > > (XEN) DOM0: Unhandled fault: ttbr address size fault (0x96000000)
> > > > at
> > > > 0xffffff8000004384
> > > > (XEN) DOM0: Internal error: : 96000000 [#1] PREEMPT SMP
> > > > (XEN) DOM0: Modules linked in:
> > > > (XEN) DOM0: CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.4.0-rc2+
> > > > #364
> > > > (XEN) DOM0: Hardware name: (null) (DT)
> > > > (XEN) DOM0: task: ffffffc000969970 ti: ffffffc00095c000 task.ti:
> > > > ffffffc00095c000
> > > > (XEN) DOM0: PC is at gic_dist_config+0x78/0xa0
> > > > (XEN) DOM0: LR is at __gic_init_bases+0x240/0x2bc
> > > >
> > > > Do we have a plan to fix this?
> > >
> > > Thanks for the reporting the issue, I can reproduce the
> > > problem. Given
> > > that this is a very serious regression and that we cannot really
> > > "fix"
> > > the Linux side because Linux is not doing anything wrong, I think we
> > > have to go with a very simple change, something we can easily
> > > backport
> > > to all past Xen releases.
> > >
> > > I suggest we turn the "unhandled word write" into a write_ignore, see
> > > below:
> >
> > As discussed IRL this might be tolerable as a patch intended for
> > backporting purposes, but I would want to see it in a series along with
> > one
> > or more not-for-backport patches which actually makes the register work
> > as
> > it should.
>
> I have the feeling that fixing properly GICD_I*ACTIVER will take
> sometimes as we also need to take into consideration hardware interrupt
> routed to a guest.
>
> As this is preventing Linux upstream to run on the latest, can we get a
> simple fix for now?
With a suitable commit message explaining the interim/backportability
nature of this patch and the intention to do it properly I'd be willing to
accept it.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2015-11-30 12:39 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-18 17:27 [PATCH v2 00/11] xen/arm: Bunch of fixes for the vGIC emulation Julien Grall
2015-11-18 17:27 ` [PATCH v2 01/11] xen/arm: vgic-v2: Implement correctly ICFGR{0, 1} read-only Julien Grall
2015-11-24 17:14 ` Ian Campbell
2015-11-25 12:29 ` Ian Campbell
2015-11-30 12:11 ` Julien Grall
2015-11-18 17:27 ` [PATCH v2 02/11] xen/arm: vgic-v3: Don't try to emulate IROUTER which doesn't exist in the spec Julien Grall
2015-11-24 17:17 ` Ian Campbell
2015-11-30 12:13 ` Julien Grall
2015-11-18 17:27 ` [PATCH v2 03/11] xen/arm: vgic-v3: Use the correct offset GICR_IGRPMODR0 Julien Grall
2015-11-18 17:27 ` [PATCH v2 04/11] xen/arm: vgic-v3: Only emulate identification registers required by the spec Julien Grall
2015-11-18 17:28 ` [PATCH v2 05/11] xen/arm: vgic: Properly emulate the full register Julien Grall
2015-11-25 9:26 ` Shannon Zhao
2015-11-25 12:15 ` unhandled word causes Xen crash with recent Linux kernels, was: " Stefano Stabellini
2015-11-25 12:26 ` Ian Campbell
2015-11-30 12:22 ` Julien Grall
2015-11-30 12:38 ` Ian Campbell [this message]
2015-12-03 10:50 ` Stefano Stabellini
2015-11-30 12:18 ` Julien Grall
2015-11-18 17:28 ` [PATCH v2 06/11] xen/arm: vgic-v3: Remove GICR_MOVALLR and GICR_MOVLPIR Julien Grall
2015-11-18 17:28 ` [PATCH v2 07/11] xen/arm: vgic: Re-order the register emulations to match the memory map Julien Grall
2015-11-18 17:28 ` [PATCH v2 08/11] xen/arm: vgic-v3: Emulate read to GICD_ICACTIVER<n> Julien Grall
2015-11-18 17:28 ` [PATCH v2 09/11] xen/arm: vgic-v3: Remove spurious return in GICR_INVALLR Julien Grall
2015-11-18 17:28 ` [PATCH v2 10/11] xen/arm: vgic-v3: Don't implement write-only register read as zero Julien Grall
2015-11-18 17:28 ` [PATCH v2 11/11] xen/arm: vgic-v3: Make clear that GICD_*SPI_* registers are reserved Julien Grall
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=1448887109.15768.33.camel@citrix.com \
--to=ian.campbell@citrix.com \
--cc=julien.grall@citrix.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xenproject.org \
--cc=zhaoshenglong@huawei.com \
/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.