[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170510122055.GE28721@cbox>
Date: Wed, 10 May 2017 14:20:55 +0200
From: Christoffer Dall <cdall@...aro.org>
To: gengdongjiu <gengdongjiu@...wei.com>
Cc: James Morse <james.morse@....com>,
gengdongjiu <gengdj.1984@...il.com>,
Tyler Baicar <tbaicar@...eaurora.org>,
Christoffer Dall <christoffer.dall@...aro.org>,
Marc Zyngier <marc.zyngier@....com>, pbonzini@...hat.com,
rkrcmar@...hat.com, linux@...linux.org.uk, catalin.marinas@....com,
will.deacon@....com, rjw@...ysocki.net,
Len Brown <lenb@...nel.org>, matt@...eblueprint.co.uk,
robert.moore@...el.com, lv.zheng@...el.com, nkaje@...eaurora.org,
zjzhang@...eaurora.org, mark.rutland@....com,
akpm@...ux-foundation.org, eun.taik.lee@...sung.com,
Sandeepa Prabhu <sandeepa.s.prabhu@...il.com>,
labbott@...hat.com, shijie.huang@....com, rruigrok@...eaurora.org,
paul.gortmaker@...driver.com, tn@...ihalf.com,
Fu Wei <fu.wei@...aro.org>, rostedt@...dmis.org,
bristot@...hat.com, linux-arm-kernel@...ts.infradead.org,
kvmarm@...ts.cs.columbia.edu, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-acpi@...r.kernel.org,
linux-efi@...r.kernel.org, devel@...ica.org,
Suzuki.Poulose@....com, Punit Agrawal <punit.agrawal@....com>,
astone@...hat.com, harba@...eaurora.org,
Hanjun Guo <hanjun.guo@...aro.org>,
John Garry <john.garry@...wei.com>,
Shiju Jose <shiju.jose@...wei.com>, joe@...ches.com,
Xiongfeng Wang <wangxiongfeng2@...wei.com>
Subject: Re: [PATCH v3 3/3] arm/arm64: signal SIBGUS and inject SEA Error
On Wed, May 10, 2017 at 05:15:04PM +0800, gengdongjiu wrote:
> Thanks James's explanation.
>
> Hi Christoffer,
>
> On 2017/5/9 22:28, James Morse wrote:
> > Hi Christoffer,
> >
> > On 08/05/17 18:54, Christoffer Dall wrote:
> >> On Mon, May 08, 2017 at 06:28:02PM +0100, James Morse wrote:
> >> I must admit I am losing track of exactly what this proposed API was
> >> supposed to do.
> >
> > There are two, and we keep jumping between them!
> > This is about two notification methods APEI has for arm64, 'SEA' and 'SEI'.
> >
> > SEA is synchronous and looks like a data abort. Qemu/kvmtool can inject these
> > today using the KVM_GET/SET_ONE_REG API whenever it wants to.
> >
> > SEI uses SError, is asynchronous and can be masked. In addition these need to be
> > consumed/synchronised by the ESB instruction, even when executed by a guest.
> > Hardware has the necessary bits to drive all this, we need to expose an API to
> > drive it.
> >
> > (I try to spell them out each time so I don't confuse SEI with something
> > synchronous!)
> >
> >
> > This patch was about SEA. I think you've answered our question:
>
> we are talking about the SEA(synchronous data abort) injection two methods:
>
> (1)change vcpu registers in the Qemu/kvmtools and using the KVM_GET/SET_ONE_REG API to set.
Yes, if this is possible, why would you want something more?
> (2)using existed in-kernel API "kvm_inject_dabt" to inject through IOCTL command from Qemu.
>
I'm not really going to consider this, because "use internal API from
userspace" doesn't work.
So this should be:
(2) Introduce a new API to do X.
I still think you know what my preference is; use the existing API if at
all possible.
Thanks,
-Christoffer
Powered by blists - more mailing lists