On 04/19/2013 09:06:27 AM, Alexander Graf wrote:
Now that all pieces are in place for reusing generic irq
infrastructure,
we can copy x86's implementation of KVM_IRQ_LINE irq injection and
simply
reuse it for PPC, as it will work there just as well.
Signed-off-by: Alexander Graf
---
arch/p
On 04/19/2013 09:06:26 AM, Alexander Graf wrote:
diff --git a/Documentation/virtual/kvm/devices/mpic.txt
b/Documentation/virtual/kvm/devices/mpic.txt
index ce98e32..dadc1e0 100644
--- a/Documentation/virtual/kvm/devices/mpic.txt
+++ b/Documentation/virtual/kvm/devices/mpic.txt
@@ -35,3 +35,14 @
> -Original Message-
> From: Alexander Graf [mailto:ag...@suse.de]
> Sent: Friday, April 19, 2013 5:44 PM
> To: Tiejun Chen
> Cc: k...@vger.kernel.org mailing list; kvm-ppc@vger.kernel.org; Bhushan
> Bharat-
> R65777
> Subject: Re: [PATCH] KVM/PPC: emulate ehpriv
>
>
> On 19.04.2013, a
On 05.04.2013, at 00:38, Paul Mackerras wrote:
> On Thu, Apr 04, 2013 at 11:49:55AM +0200, Alexander Graf wrote:
>>
>> On 04.04.2013, at 07:37, Paul Mackerras wrote:
>>
>>> On Thu, Mar 21, 2013 at 09:52:16AM +0100, Alexander Graf wrote:
> +/* Platform specific hcalls, used by KVM */
> +
We have a capability enquire system that allows user space to ask kvm
whether a feature is available.
The point behind this system is that we can have different kernel
configurations with different capabilities and user space can adjust
accordingly.
Because features can always be non existent, we
The concept of routing interrupt lines to an irqchip is nothing
that is IOAPIC specific. Every irqchip has a maximum number of pins
that can be linked to irq lines.
So let's add a new define that allows us to reuse generic code for
non-IOAPIC platforms.
Signed-off-by: Alexander Graf
---
arch/x8
Setting up IRQ routes is nothing IOAPIC specific. Extract everything
that really is generic code into irqchip.c and only leave the ioapic
specific bits to irq_comm.c.
Signed-off-by: Alexander Graf
---
include/linux/kvm_host.h |3 ++
virt/kvm/irq_comm.c | 76 ++-
The IRQ routing set ioctl lives in the hacky device assignment code inside
of KVM today. This is definitely the wrong place for it. Move it to the much
more natural kvm_main.c.
Signed-off-by: Alexander Graf
---
virt/kvm/assigned-dev.c | 30 --
virt/kvm/kvm_main.c
Quite a bit of code in KVM has been conditionalized on availability of
IOAPIC emulation. However, most of it is generically applicable to
platforms that don't have an IOPIC, but a different type of irq chip.
Make code that only relies on IRQ routing, not an APIC itself, on
CONFIG_HAVE_KVM_IRQ_ROUT
Now that we have most irqfd code completely platform agnostic, let's move
irqfd's resample capability return to generic code as well.
Signed-off-by: Alexander Graf
---
arch/x86/kvm/x86.c |1 -
virt/kvm/kvm_main.c |3 +++
2 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/arc
The current irq_comm.c file contains pieces of code that are generic
across different irqchip implementations, as well as code that is
fully IOAPIC specific.
Split the generic bits out into irqchip.c.
Signed-off-by: Alexander Graf
---
arch/x86/kvm/Makefile |2 +-
include/trace/events/k
Now that all pieces are in place for reusing generic irq infrastructure,
we can copy x86's implementation of KVM_IRQ_LINE irq injection and simply
reuse it for PPC, as it will work there just as well.
Signed-off-by: Alexander Graf
---
arch/powerpc/include/uapi/asm/kvm.h |1 +
arch/powerpc/kv
From: Scott Wood
Currently, devices that are emulated inside KVM are configured in a
hardcoded manner based on an assumption that any given architecture
only has one way to do it. If there's any need to access device state,
it is done through inflexible one-purpose-only IOCTLs (e.g.
KVM_GET/SET_
From: Scott Wood
This is QEMU's hw/openpic.c from commit
abd8d4a4d6dfea7ddea72f095f993e1de941614e ("Update version for
1.4.0-rc0"), run through Lindent with no other changes to ease merging
future changes between Linux and QEMU. Remaining style issues
(including those introduced by Lindent) will
From: Scott Wood
Remove braces that Linux style doesn't permit, remove space after
'*' that Lindent added, keep error/debug strings contiguous, etc.
Substitute type names, debug prints, etc.
Signed-off-by: Scott Wood
Signed-off-by: Alexander Graf
---
arch/powerpc/kvm/mpic.c | 445 ++
From: Scott Wood
Enabling this capability connects the vcpu to the designated in-kernel
MPIC. Using explicit connections between vcpus and irqchips allows
for flexibility, but the main benefit at the moment is that it
simplifies the code -- KVM doesn't need vm-global state to remember
which MPIC
From: Scott Wood
Remove some parts of the code that are obviously QEMU or Raven specific
before fixing style issues, to reduce the style issues that need to be
fixed.
Signed-off-by: Scott Wood
Signed-off-by: Alexander Graf
---
arch/powerpc/kvm/mpic.c | 344 ---
From: Scott Wood
Hook the MPIC code up to the KVM interfaces, add locking, etc.
Signed-off-by: Scott Wood
[agraf: add stub function for kvmppc_mpic_set_epr, non-booke, 64bit]
Signed-off-by: Alexander Graf
---
v2 -> v3:
- fix pr_debug again
---
Documentation/virtual/kvm/devices/mpic.txt |
The code as is doesn't make any sense on non-e500 platforms. Restrict it
there, so that people don't get wrong ideas on what would actually work.
This patch should get reverted as soon as it's possible to either run e500
guests on non-e500 hosts or the MPIC emulation gains support for non-e500
mod
Now that all the irq routing and irqfd pieces are generic, we can expose
real irqchip support to all of KVM's internal helpers.
This allows us to use irqfd with the in-kernel MPIC.
Signed-off-by: Alexander Graf
---
v2 -> v3:
- make mpic pointer type safe
- add wmb before setting global mp
Hi,
This patch set contains a fully working implementation of the in-kernel MPIC
from Scott with a few fixups and a new version of my irqfd generalization
patch set.
v1 -> v2:
- depend on CONFIG_ defines rather than __KVM defines
- fix compile issues
- fix the kvm_irqchip{,s} typo
v2 -> v
The prototype has been stale for a while, I can't spot any real function
define behind it. Let's just remove it.
Signed-off-by: Alexander Graf
---
include/linux/kvm_host.h |5 -
1 files changed, 0 insertions(+), 5 deletions(-)
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_ho
On 19.04.2013, at 04:44, Tiejun Chen wrote:
> We can provide this emulation to simplify more extension later.
Works for me, but this should really be part of a series that makes use of
ehpriv.
Alex
>
> Signed-off-by: Tiejun Chen
> ---
> arch/powerpc/include/asm/disassemble.h |4
>
On 04/11/2013 06:03 PM, Mihai Caraman wrote:
Add e6500 core to Kconfig description.
Signed-off-by: Mihai Caraman
---
v3:
- No change
arch/powerpc/kvm/Kconfig |6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
i
24 matches
Mail list logo