All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Thompson <daniel.thompson@linaro.org>
To: Marc Zyngier <marc.zyngier@arm.com>,
	Auger Eric <eric.auger@redhat.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"kvmarm@lists.cs.columbia.edu" <kvmarm@lists.cs.columbia.edu>,
	Christoffer Dall <christoffer.dall@linaro.org>
Cc: Andrew Jones <drjones@redhat.com>,
	Robert Richter <robert.richter@caviumnetworks.com>
Subject: Re: v4.9-rc1 fails booting as a guest on ARM64 Cavium ThunderX
Date: Fri, 21 Oct 2016 11:40:50 +0100	[thread overview]
Message-ID: <5e2c7786-1d03-874c-9ed3-13cd7be0fbf5@linaro.org> (raw)
In-Reply-To: <de2acaca-f694-be1a-5d2c-93fcf3b25011@arm.com>

On 21/10/16 09:45, Marc Zyngier wrote:
> +Robert
>
> On 21/10/16 08:01, Auger Eric wrote:
>> Hi,
>>
>> I am not able to boot 4.9-rc1 as a guest on Cavium ThunderX (dt and acpi
>> mode). Bisecting the guest shows that the problem shows up at
>>
>> 91ef84428a86b75a52e15c6fe4f56b446ba75f93
>> irqchip/gic-v3: Reset BPR during initialization
>>
>> If I remove the write to the ICC_BPR1_EL1 register on guest, the VM boots.
>
> That's very odd. A ICC_BPR1_EL1 access when HCR_EL2.IMO is set only
> affects ICH_VMCR_EL2.VBPR1. It is not trapped, since we don't set
> ICH_HCR_EL2.TALL1. It is a very boring sysreg!
>
> So from a pure architectural point of view, I don't see how this can
> fail. I've just run the same configuration on my Freescale board (GICv3
> as well), and can't see any issue at all.

Wow. Of all the patches I written for arm64 this was not the one I 
regarded as especially risky [at least when compared to the others ;-)].

Of course it does rely on writing a zero being "an attempt to program 
the binary point field to a value less than the reset value" and "sets 
the field to the reset value." and from a silicon validation point of 
view that might be regarded as a interesting corner case...


Daniel.

      parent reply	other threads:[~2016-10-21 10:40 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-21  7:01 v4.9-rc1 fails booting as a guest on ARM64 Cavium ThunderX Auger Eric
2016-10-21  8:45 ` Marc Zyngier
2016-10-21  9:05   ` Auger Eric
2016-10-21  9:40     ` Marc Zyngier
2016-10-21  9:46       ` Auger Eric
2016-10-21 11:49         ` Andrew Jones
2016-10-21 11:57           ` Peter Maydell
2016-10-21 12:07             ` Andrew Jones
2016-10-21 12:52               ` Marc Zyngier
2016-10-21 12:58                 ` Peter Maydell
2016-10-21 13:20                   ` Marc Zyngier
2016-10-21 13:06                 ` Andrew Jones
2016-10-21 13:47                   ` Marc Zyngier
2016-10-21 16:34                 ` Robert Richter
2016-10-26  7:18                 ` Robert Richter
2016-10-26  7:39                   ` Marc Zyngier
2016-11-03 18:01     ` Robert Richter
2016-11-04 13:30       ` Auger Eric
2016-10-21 10:40   ` Daniel Thompson [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=5e2c7786-1d03-874c-9ed3-13cd7be0fbf5@linaro.org \
    --to=daniel.thompson@linaro.org \
    --cc=christoffer.dall@linaro.org \
    --cc=drjones@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=marc.zyngier@arm.com \
    --cc=robert.richter@caviumnetworks.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.