Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Gleb Natapov
On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: When the guest accesses I/O memory this will create data abort exceptions and they are handled by decoding the HSR information (physical address, read/write, length, register) and forwarding reads and writes to QEMU which

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Marc Zyngier
On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: When the guest accesses I/O memory this will create data abort exceptions and they are handled by decoding the HSR information (physical address, read/write, length, register) and

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Gleb Natapov
On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: When the guest accesses I/O memory this will create data abort exceptions and they are handled by decoding the HSR

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Marc Zyngier
On 15/01/13 13:34, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: When the guest accesses I/O memory this will create data abort exceptions and they are

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Gleb Natapov
On Tue, Jan 15, 2013 at 01:46:04PM +, Marc Zyngier wrote: On 15/01/13 13:34, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: When the guest

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Christoffer Dall
On Tue, Jan 15, 2013 at 9:27 AM, Gleb Natapov g...@redhat.com wrote: On Tue, Jan 15, 2013 at 01:46:04PM +, Marc Zyngier wrote: On 15/01/13 13:34, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08,

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Marc Zyngier
On 15/01/13 14:27, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:46:04PM +, Marc Zyngier wrote: On 15/01/13 13:34, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb Natapov wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500,

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-15 Thread Gleb Natapov
On Tue, Jan 15, 2013 at 02:48:27PM +, Marc Zyngier wrote: On 15/01/13 14:27, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:46:04PM +, Marc Zyngier wrote: On 15/01/13 13:34, Gleb Natapov wrote: On Tue, Jan 15, 2013 at 01:29:40PM +, Marc Zyngier wrote: On 15/01/13 13:18, Gleb

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Russell King - ARM Linux
On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: diff --git a/arch/arm/kvm/decode.c b/arch/arm/kvm/decode.c new file mode 100644 index 000..469cf14 --- /dev/null +++ b/arch/arm/kvm/decode.c @@ -0,0 +1,462 @@ +/* + * Copyright (C) 2012 - Virtual Open Systems and

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Christoffer Dall
On Mon, Jan 14, 2013 at 11:43 AM, Russell King - ARM Linux li...@arm.linux.org.uk wrote: On Tue, Jan 08, 2013 at 01:40:05PM -0500, Christoffer Dall wrote: diff --git a/arch/arm/kvm/decode.c b/arch/arm/kvm/decode.c new file mode 100644 index 000..469cf14 --- /dev/null +++

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Russell King - ARM Linux
On Mon, Jan 14, 2013 at 01:25:39PM -0500, Christoffer Dall wrote: However, unifying all instruction decoding within arch/arm is quite the heavy task, and requires agreeing on some canonical API that people can live with and it will likely take a long time. I seem to recall there were also

Re: [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Will Deacon
On Mon, Jan 14, 2013 at 06:43:19PM +, Russell King - ARM Linux wrote: On Mon, Jan 14, 2013 at 01:25:39PM -0500, Christoffer Dall wrote: However, unifying all instruction decoding within arch/arm is quite the heavy task, and requires agreeing on some canonical API that people can live

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Alexander Graf
On 01/14/2013 07:50 PM, Will Deacon wrote: On Mon, Jan 14, 2013 at 06:43:19PM +, Russell King - ARM Linux wrote: On Mon, Jan 14, 2013 at 01:25:39PM -0500, Christoffer Dall wrote: However, unifying all instruction decoding within arch/arm is quite the heavy task, and requires agreeing on

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Christoffer Dall
On Mon, Jan 14, 2013 at 1:53 PM, Alexander Graf ag...@suse.de wrote: On 01/14/2013 07:50 PM, Will Deacon wrote: On Mon, Jan 14, 2013 at 06:43:19PM +, Russell King - ARM Linux wrote: On Mon, Jan 14, 2013 at 01:25:39PM -0500, Christoffer Dall wrote: However, unifying all instruction

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Will Deacon
On Mon, Jan 14, 2013 at 06:53:14PM +, Alexander Graf wrote: On 01/14/2013 07:50 PM, Will Deacon wrote: FWIW, KVM only needs this code for handling complex MMIO instructions, which aren't even generated by recent guest kernels. I'm inclined to suggest removing this emulation code from

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Christoffer Dall
On Mon, Jan 14, 2013 at 2:00 PM, Will Deacon will.dea...@arm.com wrote: On Mon, Jan 14, 2013 at 06:53:14PM +, Alexander Graf wrote: On 01/14/2013 07:50 PM, Will Deacon wrote: FWIW, KVM only needs this code for handling complex MMIO instructions, which aren't even generated by recent

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Will Deacon
On Mon, Jan 14, 2013 at 07:12:49PM +, Christoffer Dall wrote: On Mon, Jan 14, 2013 at 2:00 PM, Will Deacon will.dea...@arm.com wrote: On Mon, Jan 14, 2013 at 06:53:14PM +, Alexander Graf wrote: On 01/14/2013 07:50 PM, Will Deacon wrote: FWIW, KVM only needs this code for handling

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Christoffer Dall
On Mon, Jan 14, 2013 at 5:36 PM, Will Deacon will.dea...@arm.com wrote: On Mon, Jan 14, 2013 at 07:12:49PM +, Christoffer Dall wrote: On Mon, Jan 14, 2013 at 2:00 PM, Will Deacon will.dea...@arm.com wrote: On Mon, Jan 14, 2013 at 06:53:14PM +, Alexander Graf wrote: On 01/14/2013

Re: [kvmarm] [PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-14 Thread Gleb Natapov
On Mon, Jan 14, 2013 at 10:36:38PM +, Will Deacon wrote: On Mon, Jan 14, 2013 at 07:12:49PM +, Christoffer Dall wrote: On Mon, Jan 14, 2013 at 2:00 PM, Will Deacon will.dea...@arm.com wrote: On Mon, Jan 14, 2013 at 06:53:14PM +, Alexander Graf wrote: On 01/14/2013 07:50 PM,

[PATCH v5 13/14] KVM: ARM: Handle I/O aborts

2013-01-08 Thread Christoffer Dall
When the guest accesses I/O memory this will create data abort exceptions and they are handled by decoding the HSR information (physical address, read/write, length, register) and forwarding reads and writes to QEMU which performs the device emulation. Certain classes of load/store operations do