Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 03:56:47 PM, Caraman Mihai Claudiu-B02008 wrote: -Original Message- From: Wood Scott-B07421 Sent: Friday, May 03, 2013 11:15 PM To: Caraman Mihai Claudiu-B02008 Cc: Wood Scott-B07421; kvm-...@vger.kernel.org; kvm@vger.kernel.org; linuxppc-...@lists.ozlabs.org

Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 05:59:32 PM, Caraman Mihai Claudiu-B02008 wrote: -Original Message- From: Wood Scott-B07421 Sent: Saturday, May 04, 2013 1:07 AM To: Caraman Mihai Claudiu-B02008 Cc: Wood Scott-B07421; kvm-...@vger.kernel.org; kvm@vger.kernel.org; linuxppc-...@lists.ozlabs.org

[PATCH] kvm/ppc/booke64: Hard disable interrupts when entering the guest

2013-05-03 Thread Scott Wood
be bad if the non-hv code were used on 64-bit or if 32-bit guest lazy interrupt disabling, since the non-hv code changes IVPR among other things). Signed-off-by: Scott Wood scottw...@freescale.com Cc: Mihai Caraman mihai.cara...@freescale.com --- arch/powerpc/kvm/booke.c |9 - 1 file

Re: [PATCH] kvm/ppc/booke64: Hard disable interrupts when entering the guest

2013-05-03 Thread Scott Wood
On 05/03/2013 06:45:23 PM, Scott Wood wrote: While we could just set PACA_IRQ_HARD_DIS after an exit to compensate, instead hard-disable interrupts before entering the guest. This way, we won't have to worry about interactions if we take an interrupt during the guest entry code. While I don't

Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 11:11:10 AM, Mihai Caraman wrote: A change in the generic code highlighted that we were running with IRQs (soft) enabled on Book3E 64-bit when trying to restart interrupts from handle_exit(). This is a lesson to configure lockdep often :) There is no reason to exit guest with

Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 03:01:26 PM, Caraman Mihai Claudiu-B02008 wrote: -Original Message- From: Wood Scott-B07421 Sent: Friday, May 03, 2013 9:05 PM To: Caraman Mihai Claudiu-B02008 Cc: kvm-ppc@vger.kernel.org; k...@vger.kernel.org; linuxppc- d...@lists.ozlabs.org; Caraman Mihai

Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 03:56:47 PM, Caraman Mihai Claudiu-B02008 wrote: -Original Message- From: Wood Scott-B07421 Sent: Friday, May 03, 2013 11:15 PM To: Caraman Mihai Claudiu-B02008 Cc: Wood Scott-B07421; kvm-ppc@vger.kernel.org; k...@vger.kernel.org; linuxppc-...@lists.ozlabs.org

Re: [PATCH] KVM: PPC: Book3E 64: Fix IRQs warnings and hangs

2013-05-03 Thread Scott Wood
On 05/03/2013 05:59:32 PM, Caraman Mihai Claudiu-B02008 wrote: -Original Message- From: Wood Scott-B07421 Sent: Saturday, May 04, 2013 1:07 AM To: Caraman Mihai Claudiu-B02008 Cc: Wood Scott-B07421; kvm-ppc@vger.kernel.org; k...@vger.kernel.org; linuxppc-...@lists.ozlabs.org

[PATCH] kvm/ppc/booke64: Hard disable interrupts when entering the guest

2013-05-03 Thread Scott Wood
be bad if the non-hv code were used on 64-bit or if 32-bit guest lazy interrupt disabling, since the non-hv code changes IVPR among other things). Signed-off-by: Scott Wood scottw...@freescale.com Cc: Mihai Caraman mihai.cara...@freescale.com --- arch/powerpc/kvm/booke.c |9 - 1 file

Re: [PATCH] kvm/ppc/booke64: Hard disable interrupts when entering the guest

2013-05-03 Thread Scott Wood
On 05/03/2013 06:45:23 PM, Scott Wood wrote: While we could just set PACA_IRQ_HARD_DIS after an exit to compensate, instead hard-disable interrupts before entering the guest. This way, we won't have to worry about interactions if we take an interrupt during the guest entry code. While I don't

Re: [PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-05-02 Thread Scott Wood
On 05/02/2013 09:37:53 AM, Marcelo Tosatti wrote: On Wed, May 01, 2013 at 07:27:23PM -0500, Scott Wood wrote: On 05/01/2013 07:15:53 PM, Marcelo Tosatti wrote: On Fri, Apr 26, 2013 at 07:53:38PM -0500, Scott Wood wrote: diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c index

Re: [PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-05-02 Thread Scott Wood
On 05/02/2013 09:37:53 AM, Marcelo Tosatti wrote: On Wed, May 01, 2013 at 07:27:23PM -0500, Scott Wood wrote: On 05/01/2013 07:15:53 PM, Marcelo Tosatti wrote: On Fri, Apr 26, 2013 at 07:53:38PM -0500, Scott Wood wrote: diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c index

Re: [PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-05-01 Thread Scott Wood
On 05/01/2013 07:15:53 PM, Marcelo Tosatti wrote: On Fri, Apr 26, 2013 at 07:53:38PM -0500, Scott Wood wrote: diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c index 1020119..506c87d 100644 --- a/arch/powerpc/kvm/booke.c +++ b/arch/powerpc/kvm/booke.c @@ -832,6 +832,8 @@ int

Re: [PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-05-01 Thread Scott Wood
On 05/01/2013 07:27:23 PM, Scott Wood wrote: On 05/01/2013 07:15:53 PM, Marcelo Tosatti wrote: This is not good practice (codepaths should either hold srcu or not hold it, unconditionally). How is it different from moving the srcu lock into individual cases of the switch? I just did

Re: [PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-05-01 Thread Scott Wood
On 05/01/2013 07:15:53 PM, Marcelo Tosatti wrote: On Fri, Apr 26, 2013 at 07:53:38PM -0500, Scott Wood wrote: diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c index 1020119..506c87d 100644 --- a/arch/powerpc/kvm/booke.c +++ b/arch/powerpc/kvm/booke.c @@ -832,6 +832,8 @@ int

[PATCH 2/2] kvm/ppc/mpic: remove users

2013-04-30 Thread Scott Wood
This is an unused (no pun intended) leftover from when this code did reference counting. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c |1 - 1 file changed, 1 deletion(-) diff --git a/arch/powerpc/kvm/mpic.c b/arch/powerpc/kvm/mpic.c index 80ea3cb..c30a04b

[PATCH 1/2] kvm/ppc/mpic: fix mmio region lists when multiple guests used

2013-04-30 Thread Scott Wood
Keeping a linked list of statically defined objects doesn't work very well when we have multiple guests. :-P Switch to an array of constant objects. This fixes a hang when multiple guests are used. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 52

[PATCH] kvm: Add compat_ioctl for device control API

2013-04-30 Thread Scott Wood
This API shouldn't have 32/64-bit issues, but VFS assumes it does unless told otherwise. Signed-off-by: Scott Wood scottw...@freescale.com --- virt/kvm/kvm_main.c |3 +++ 1 file changed, 3 insertions(+) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 54a14fa..ee0adad 100644

[PATCH 2/2] kvm/ppc/mpic: remove users

2013-04-30 Thread Scott Wood
This is an unused (no pun intended) leftover from when this code did reference counting. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c |1 - 1 file changed, 1 deletion(-) diff --git a/arch/powerpc/kvm/mpic.c b/arch/powerpc/kvm/mpic.c index 80ea3cb..c30a04b

[PATCH 1/2] kvm/ppc/mpic: fix mmio region lists when multiple guests used

2013-04-30 Thread Scott Wood
Keeping a linked list of statically defined objects doesn't work very well when we have multiple guests. :-P Switch to an array of constant objects. This fixes a hang when multiple guests are used. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 52

[PATCH] kvm/ppc/mpic: remove default routes from documentation

2013-04-29 Thread Scott Wood
The default routes were removed from the code during patchset respinning, but were not removed from the documentation. Signed-off-by: Scott Wood scottw...@freescale.com --- Documentation/virtual/kvm/devices/mpic.txt |3 --- 1 file changed, 3 deletions(-) diff --git a/Documentation/virtual

Re: [PATCH v5 0/8] In-kernel XICS interrupt controller emulation

2013-04-26 Thread Scott Wood
that defines IBM's pSeries platform architecture). This version of the patch series uses the latest device API as posted by Scott Wood, that is, i.e., the version where the core device code provides the file descriptor and ioctl handler. I have structured the series so that the API is added

Re: [PATCH v5 0/8] In-kernel XICS interrupt controller emulation

2013-04-26 Thread Scott Wood
On 04/26/2013 06:52:47 PM, Paul Mackerras wrote: On Fri, Apr 26, 2013 at 12:13:33PM -0500, Scott Wood wrote: Also please note that we no longer hold kvm-lock during device creation, so your EEXIST check looks racy. Huh? Patch 2/8 adds this code: + mutex_lock(kvm-lock

[PATCH 3/3] kvm: Fix obsolete comment about locking for kvm_io_bus_read/write

2013-04-26 Thread Scott Wood
Nobody is actually calling these functions with slots_lock held. The srcu read lock, OTOH, is required. Signed-off-by: Scott Wood scottw...@freescale.com --- virt/kvm/kvm_main.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c

[PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-04-26 Thread Scott Wood
KVM core expects arch code to acquire the srcu lock when calling gfn_to_memslot and similar functions. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/44x_tlb.c |5 + arch/powerpc/kvm/booke.c| 19 +++ arch/powerpc/kvm/e500_mmu.c |5

[PATCH 2/3] kvm/ppc: Hold srcu lock when calling kvm_io_bus_read/write

2013-04-26 Thread Scott Wood
These functions do an srcu_dereference without acquiring the srcu lock themselves. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/powerpc.c | 23 +++ 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/arch/powerpc/kvm/powerpc.c b/arch

Re: [PATCH v5 0/8] In-kernel XICS interrupt controller emulation

2013-04-26 Thread Scott Wood
On 04/26/2013 06:52:47 PM, Paul Mackerras wrote: On Fri, Apr 26, 2013 at 12:13:33PM -0500, Scott Wood wrote: Also please note that we no longer hold kvm-lock during device creation, so your EEXIST check looks racy. Huh? Patch 2/8 adds this code: + mutex_lock(kvm-lock

[PATCH 1/3] kvm/ppc/booke: Hold srcu lock when calling gfn functions

2013-04-26 Thread Scott Wood
KVM core expects arch code to acquire the srcu lock when calling gfn_to_memslot and similar functions. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/44x_tlb.c |5 + arch/powerpc/kvm/booke.c| 19 +++ arch/powerpc/kvm/e500_mmu.c |5

[PATCH 2/3] kvm/ppc: Hold srcu lock when calling kvm_io_bus_read/write

2013-04-26 Thread Scott Wood
These functions do an srcu_dereference without acquiring the srcu lock themselves. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/powerpc.c | 23 +++ 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/arch/powerpc/kvm/powerpc.c b/arch

Re: [PATCH v4 1/6] kvm: add device control API

2013-04-25 Thread Scott Wood
On 04/25/2013 05:47:39 AM, Alexander Graf wrote: On 25.04.2013, at 11:43, Gleb Natapov wrote: +void kvm_device_put(struct kvm_device *dev) +{ + if (atomic_dec_and_test(dev-users)) + dev-ops-destroy(dev); +} + +static int kvm_device_release(struct inode *inode, struct

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-25 Thread Scott Wood
On 04/25/2013 04:58:51 AM, Alexander Graf wrote: On 19.04.2013, at 20:02, Scott Wood wrote: On 04/19/2013 09:06:26 AM, Alexander Graf wrote: + if (notify_eoi != -1) { + spin_unlock_irq(opp-lock); + kvm_notify_acked_irq(opp-kvm, 0, notify_eoi

Re: [PATCH v4 1/6] kvm: add device control API

2013-04-25 Thread Scott Wood
On 04/25/2013 01:22:04 PM, Gleb Natapov wrote: On Thu, Apr 25, 2013 at 11:51:08AM -0500, Scott Wood wrote: On 04/25/2013 05:47:39 AM, Alexander Graf wrote: On 25.04.2013, at 11:43, Gleb Natapov wrote: +void kvm_device_put(struct kvm_device *dev) +{ + if (atomic_dec_and_test(dev

Re: [PATCH 16/17] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE

2013-04-25 Thread Scott Wood
On 04/25/2013 09:49:23 AM, Alexander Graf wrote: On 25.04.2013, at 13:30, Alexander Graf wrote: On 19.04.2013, at 20:51, Scott Wood wrote: 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

[PATCH 2/2] kvm/ppc/mpic: Eliminate mmio_mapped

2013-04-25 Thread Scott Wood
We no longer need to keep track of this now that MPIC destruction always happens either during VM destruction (after MMIO has been destroyed) or during a failed creation (before the fd has been exposed to userspace, and thus before the MMIO region could have been registered). Signed-off-by: Scott

[PATCH 1/2] kvm: destroy emulated devices on VM exit

2013-04-25 Thread Scott Wood
The hassle of getting refcounting right was greater than the hassle of keeping a list of devices to destroy on VM exit. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c |2 -- include/linux/kvm_host.h |3 ++- virt/kvm/kvm_main.c | 29

Re: [PATCH v4 1/6] kvm: add device control API

2013-04-25 Thread Scott Wood
On 04/25/2013 05:47:39 AM, Alexander Graf wrote: On 25.04.2013, at 11:43, Gleb Natapov wrote: +void kvm_device_put(struct kvm_device *dev) +{ + if (atomic_dec_and_test(dev-users)) + dev-ops-destroy(dev); +} + +static int kvm_device_release(struct inode *inode, struct

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-25 Thread Scott Wood
On 04/25/2013 04:58:51 AM, Alexander Graf wrote: On 19.04.2013, at 20:02, Scott Wood wrote: On 04/19/2013 09:06:26 AM, Alexander Graf wrote: + if (notify_eoi != -1) { + spin_unlock_irq(opp-lock); + kvm_notify_acked_irq(opp-kvm, 0, notify_eoi

Re: [PATCH v4 1/6] kvm: add device control API

2013-04-25 Thread Scott Wood
On 04/25/2013 01:22:04 PM, Gleb Natapov wrote: On Thu, Apr 25, 2013 at 11:51:08AM -0500, Scott Wood wrote: On 04/25/2013 05:47:39 AM, Alexander Graf wrote: On 25.04.2013, at 11:43, Gleb Natapov wrote: +void kvm_device_put(struct kvm_device *dev) +{ + if (atomic_dec_and_test(dev

Re: [PATCH 16/17] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE

2013-04-25 Thread Scott Wood
On 04/25/2013 09:49:23 AM, Alexander Graf wrote: On 25.04.2013, at 13:30, Alexander Graf wrote: On 19.04.2013, at 20:51, Scott Wood wrote: 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

[PATCH 1/2] kvm: destroy emulated devices on VM exit

2013-04-25 Thread Scott Wood
The hassle of getting refcounting right was greater than the hassle of keeping a list of devices to destroy on VM exit. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c |2 -- include/linux/kvm_host.h |3 ++- virt/kvm/kvm_main.c | 29

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-22 Thread Scott Wood
On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: Do we really want any default routes? There's no platform notion of GSI here, so how is userspace to know how the kernel set it up (or what GSIs are free to be used for new routes) -- other than

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-22 Thread Scott Wood
On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: Do we really want any default routes? There's no platform notion of GSI here, so how is userspace to know how the kernel set it up (or what GSIs are free to be used for new routes) -- other than

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-19 Thread Scott Wood
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

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-19 Thread Scott Wood
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

Re: [PATCH 16/17] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE

2013-04-19 Thread Scott Wood
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

Re: [PATCH 17/17] KVM: PPC: MPIC: Restrict to e500 platforms

2013-04-18 Thread Scott Wood
On 04/18/2013 09:11:57 AM, Alexander Graf wrote: The code as is doesn't make any sense on non-e500 platforms. Why? What actually breaks? You never answered my earlier question about whether 74xx is supported. MPC86xx is 74xx-derived and has an FSL MPIC. Plus, as pointed out earlier,

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 09:11:55 AM, Alexander Graf wrote: 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 ag...@suse.de ---

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: On 04/18/2013 09:11:55 AM, Alexander Graf wrote: +static inline int irqchip_in_kernel(struct kvm *kvm) +{ + int ret = 0; + +#ifdef CONFIG_KVM_MPIC + ret = ret || (kvm-arch.mpic != NULL

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 08:09:23 PM, Alexander Graf wrote: On 19.04.2013, at 02:50, Scott Wood wrote: On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: On 04/18/2013 09:11:55 AM, Alexander Graf wrote: +static inline int irqchip_in_kernel(struct kvm *kvm

Re: [PATCH 17/17] KVM: PPC: MPIC: Restrict to e500 platforms

2013-04-18 Thread Scott Wood
On 04/18/2013 09:11:57 AM, Alexander Graf wrote: The code as is doesn't make any sense on non-e500 platforms. Why? What actually breaks? You never answered my earlier question about whether 74xx is supported. MPC86xx is 74xx-derived and has an FSL MPIC. Plus, as pointed out earlier,

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 09:11:55 AM, Alexander Graf wrote: 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 ag...@suse.de ---

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: On 04/18/2013 09:11:55 AM, Alexander Graf wrote: +static inline int irqchip_in_kernel(struct kvm *kvm) +{ + int ret = 0; + +#ifdef CONFIG_KVM_MPIC + ret = ret || (kvm-arch.mpic != NULL

Re: [PATCH 15/17] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC

2013-04-18 Thread Scott Wood
On 04/18/2013 08:09:23 PM, Alexander Graf wrote: On 19.04.2013, at 02:50, Scott Wood wrote: On 04/18/2013 07:15:46 PM, Alexander Graf wrote: On 18.04.2013, at 23:39, Scott Wood wrote: On 04/18/2013 09:11:55 AM, Alexander Graf wrote: +static inline int irqchip_in_kernel(struct kvm *kvm

Re: [PATCH v4 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-15 Thread Scott Wood
On 04/15/2013 12:23:28 AM, Paul Mackerras wrote: On Fri, Apr 12, 2013 at 07:08:47PM -0500, Scott Wood wrote: 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

[PATCH] kvm/ppc: don't call complete_mmio_load when it's a store

2013-04-15 Thread Scott Wood
complete_mmio_load writes back the mmio result into the destination register. Doing this on a store results in register corruption. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/powerpc.c |1 - 1 file changed, 1 deletion(-) diff --git a/arch/powerpc/kvm/powerpc.c b

Re: [PATCH v4 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-15 Thread Scott Wood
On 04/15/2013 12:23:28 AM, Paul Mackerras wrote: On Fri, Apr 12, 2013 at 07:08:47PM -0500, Scott Wood wrote: 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

[PATCH] kvm/ppc: don't call complete_mmio_load when it's a store

2013-04-15 Thread Scott Wood
complete_mmio_load writes back the mmio result into the destination register. Doing this on a store results in register corruption. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/powerpc.c |1 - 1 file changed, 1 deletion(-) diff --git a/arch/powerpc/kvm/powerpc.c b

[PATCH v4 1/6] kvm: add device control API

2013-04-12 Thread Scott Wood
enumerated capabilities. Signed-off-by: Scott Wood scottw...@freescale.com --- v4: - Move some boilerplate back into generic code, as requested by Gleb. File descriptor management and reference counting is no longer the concern of the device implementation. - Don't hold kvm-lock during create

[PATCH v4 0/6] device-control and in-kernel MPIC

2013-04-12 Thread Scott Wood
Scott Wood (6): kvm: add device control API kvm/ppc/mpic: import hw/openpic.c from QEMU kvm/ppc/mpic: remove some obviously unneeded code kvm/ppc/mpic: adapt to kernel style and environment kvm/ppc/mpic: in-kernel MPIC emulation kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Documentation

[PATCH v4 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-12 Thread Scott Wood
Hook the MPIC code up to the KVM interfaces, add locking, etc. TODO: irqfd and KVM_IRQ_LINE support Signed-off-by: Scott Wood scottw...@freescale.com --- v4: - update for changes in device control api - use put/get_user where possible - add missing locks (one which was actually required

[PATCH v4 4/6] kvm/ppc/mpic: adapt to kernel style and environment

2013-04-12 Thread 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 scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 445

[PATCH v4 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-12 Thread Scott Wood
is associated with this vm, and it doesn't need to care about ordering between irqchip creation and vcpu creation. Signed-off-by: Scott Wood scottw...@freescale.com --- v4: - add vcpu-arch.irq_cpu_id, instead of incorrectly using vcpu_id now that the numberspaces are separate - pass the vcpu to mpic code

[PATCH v4 1/6] kvm: add device control API

2013-04-12 Thread Scott Wood
enumerated capabilities. Signed-off-by: Scott Wood scottw...@freescale.com --- v4: - Move some boilerplate back into generic code, as requested by Gleb. File descriptor management and reference counting is no longer the concern of the device implementation. - Don't hold kvm-lock during create

[PATCH v4 0/6] device-control and in-kernel MPIC

2013-04-12 Thread Scott Wood
Scott Wood (6): kvm: add device control API kvm/ppc/mpic: import hw/openpic.c from QEMU kvm/ppc/mpic: remove some obviously unneeded code kvm/ppc/mpic: adapt to kernel style and environment kvm/ppc/mpic: in-kernel MPIC emulation kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Documentation

[PATCH v4 2/6] kvm/ppc/mpic: import hw/openpic.c from QEMU

2013-04-12 Thread Scott Wood
patch. Signed-off-by: Scott Wood scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 1686 +++ 1 file changed, 1686 insertions(+) create mode 100644 arch/powerpc/kvm/mpic.c diff --git a/arch/powerpc/kvm/mpic.c b/arch/powerpc/kvm/mpic.c new file mode

[PATCH v4 3/6] kvm/ppc/mpic: remove some obviously unneeded code

2013-04-12 Thread 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 scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 344 --- 1 file

[PATCH v4 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-12 Thread Scott Wood
Hook the MPIC code up to the KVM interfaces, add locking, etc. TODO: irqfd and KVM_IRQ_LINE support Signed-off-by: Scott Wood scottw...@freescale.com --- v4: - update for changes in device control api - use put/get_user where possible - add missing locks (one which was actually required

[PATCH v4 4/6] kvm/ppc/mpic: adapt to kernel style and environment

2013-04-12 Thread 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 scottw...@freescale.com --- arch/powerpc/kvm/mpic.c | 445

Re: RFC: vfio API changes needed for powerpc (v3)

2013-04-11 Thread Scott Wood
On 04/11/2013 07:56:59 AM, Joerg Roedel wrote: On Tue, Apr 09, 2013 at 01:22:15AM +, Yoder Stuart-B08248 wrote: What happens if a normal unmap call is done on the MSI iova? Do we need a separate unmap? I was thinking a normal unmap on an MSI windows would be an error...but I'm

Re: [PATCH] KVM: PPC: emulate dcbst

2013-04-10 Thread Scott Wood
On 04/09/2013 10:20:41 PM, Yoder Stuart-B08248 wrote: -Original Message- From: Yoder Stuart-B08248 Sent: Tuesday, April 09, 2013 3:36 PM To: ag...@suse.de Cc: kvm-...@vger.kernel.org; kvm@vger.kernel.org; Yoder Stuart-B08248 Subject: [PATCH] KVM: PPC: emulate dcbst From:

Re: [PATCH] KVM: PPC: emulate dcbst

2013-04-10 Thread Scott Wood
On 04/09/2013 10:20:41 PM, Yoder Stuart-B08248 wrote: -Original Message- From: Yoder Stuart-B08248 Sent: Tuesday, April 09, 2013 3:36 PM To: ag...@suse.de Cc: kvm-ppc@vger.kernel.org; k...@vger.kernel.org; Yoder Stuart-B08248 Subject: [PATCH] KVM: PPC: emulate dcbst From:

Re: [PULL 0/7] ppc patch queue 2013-03-22

2013-04-08 Thread Scott Wood
On 03/31/2013 06:05:40 AM, Alexander Graf wrote: On 31.03.2013, at 12:49, Gleb Natapov wrote: On Tue, Mar 26, 2013 at 11:37:42AM -0500, Scott Wood wrote: On 03/25/2013 08:33:12 PM, Gleb Natapov wrote: On Tue, Mar 26, 2013 at 12:35:09AM +0100, Alexander Graf wrote: On 26.03.2013, at 00:16

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-08 Thread Scott Wood
On 04/08/2013 01:30:42 AM, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:57:52PM -0500, Scott Wood wrote: Hook the MPIC code up to the KVM interfaces, add locking, etc. [snip] @@ -2164,6 +2164,15 @@ static int kvm_ioctl_create_device(struct kvm *kvm, bool test = cd-flags

Re: [RFC PATCH v3 1/6] kvm: add device control API

2013-04-08 Thread Scott Wood
On 04/08/2013 12:33:13 AM, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:57:48PM -0500, Scott Wood wrote: [snip] +static int kvm_ioctl_create_device(struct kvm *kvm, + struct kvm_create_device *cd) +{ + bool test = cd-flags KVM_CREATE_DEVICE_TEST

Re: [PULL 0/7] ppc patch queue 2013-03-22

2013-04-08 Thread Scott Wood
On 03/31/2013 06:05:40 AM, Alexander Graf wrote: On 31.03.2013, at 12:49, Gleb Natapov wrote: On Tue, Mar 26, 2013 at 11:37:42AM -0500, Scott Wood wrote: On 03/25/2013 08:33:12 PM, Gleb Natapov wrote: On Tue, Mar 26, 2013 at 12:35:09AM +0100, Alexander Graf wrote: On 26.03.2013, at 00:16

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-08 Thread Scott Wood
On 04/08/2013 01:30:42 AM, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:57:52PM -0500, Scott Wood wrote: Hook the MPIC code up to the KVM interfaces, add locking, etc. [snip] @@ -2164,6 +2164,15 @@ static int kvm_ioctl_create_device(struct kvm *kvm, bool test = cd-flags

Re: [RFC PATCH v3 1/6] kvm: add device control API

2013-04-08 Thread Scott Wood
On 04/08/2013 12:33:13 AM, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:57:48PM -0500, Scott Wood wrote: [snip] +static int kvm_ioctl_create_device(struct kvm *kvm, + struct kvm_create_device *cd) +{ + bool test = cd-flags KVM_CREATE_DEVICE_TEST

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-05 Thread Scott Wood
On 04/05/2013 01:09:50 AM, Alexander Graf wrote: Am 05.04.2013 um 00:35 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 05:30:05 PM, Alexander Graf wrote: Am 04.04.2013 um 20:41 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 07:54:20 AM, Alexander Graf wrote

Re: RFC: vfio API changes needed for powerpc (v3)

2013-04-05 Thread Scott Wood
On 04/04/2013 05:10:27 PM, Yoder Stuart-B08248 wrote: /* * VFIO_IOMMU_PAMU_UNMAP_MSI_BANK * * Unmaps the MSI bank at the specified iova. * Caller provides struct vfio_pamu_msi_bank_unmap with all fields set. * Operates on VFIO file descriptor (/dev/vfio/vfio). * Return: 0 on success,

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-05 Thread Scott Wood
On 04/05/2013 01:09:50 AM, Alexander Graf wrote: Am 05.04.2013 um 00:35 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 05:30:05 PM, Alexander Graf wrote: Am 04.04.2013 um 20:41 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 07:54:20 AM, Alexander Graf wrote

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-04 Thread Scott Wood
On 04/04/2013 07:54:20 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: + if (opp-mpic_mode_mask == GCR_MODE_PROXY) Shouldn't this be an ? The way the mode field was originally documented was a two-bit field, where 0b11 was external proxy, and 0b10 was reserved

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-04 Thread Scott Wood
On 04/04/2013 05:30:05 PM, Alexander Graf wrote: Am 04.04.2013 um 20:41 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 07:54:20 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: +if (opp-mpic_mode_mask == GCR_MODE_PROXY) Shouldn't this be an ? The way

Re: RFC: vfio API changes needed for powerpc (v2)

2013-04-04 Thread Scott Wood
On 04/04/2013 04:38:44 PM, Yoder Stuart-B08248 wrote: /* * VFIO_PAMU_MAP_MSI_BANK * * Maps the MSI bank at the specified index and iova. User space must * call this ioctl once for each MSI bank (count of banks is returned by * VFIO_IOMMU_GET_MSI_BANK_COUNT). * Caller

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-04 Thread Scott Wood
On 04/04/2013 12:59:02 AM, Gleb Natapov wrote: On Wed, Apr 03, 2013 at 03:58:04PM -0500, Scott Wood wrote: KVM_DEV_MPIC_* could go elsewhere if you want to avoid cluttering the main kvm.h. The arch header would be OK, since the non-arch header includes the arch header, and thus it wouldn't

Re: [RFC PATCH v3 1/6] kvm: add device control API

2013-04-04 Thread Scott Wood
On 04/04/2013 05:41:35 AM, Gleb Natapov wrote: On Tue, Apr 02, 2013 at 08:57:48PM -0500, Scott Wood wrote: +struct kvm_device_attr { + __u32 flags; /* no flags currently defined */ + __u32 group; /* device-defined */ + __u64 attr; /* group-defined

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-04 Thread Scott Wood
On 04/04/2013 07:54:20 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: + if (opp-mpic_mode_mask == GCR_MODE_PROXY) Shouldn't this be an ? The way the mode field was originally documented was a two-bit field, where 0b11 was external proxy, and 0b10 was reserved

Re: [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC

2013-04-04 Thread Scott Wood
On 04/04/2013 05:30:05 PM, Alexander Graf wrote: Am 04.04.2013 um 20:41 schrieb Scott Wood scottw...@freescale.com: On 04/04/2013 07:54:20 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: +if (opp-mpic_mode_mask == GCR_MODE_PROXY) Shouldn't this be an ? The way

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-04 Thread Scott Wood
On 04/04/2013 12:59:02 AM, Gleb Natapov wrote: On Wed, Apr 03, 2013 at 03:58:04PM -0500, Scott Wood wrote: KVM_DEV_MPIC_* could go elsewhere if you want to avoid cluttering the main kvm.h. The arch header would be OK, since the non-arch header includes the arch header, and thus it wouldn't

Re: [RFC PATCH v3 1/6] kvm: add device control API

2013-04-04 Thread Scott Wood
On 04/04/2013 05:41:35 AM, Gleb Natapov wrote: On Tue, Apr 02, 2013 at 08:57:48PM -0500, Scott Wood wrote: +struct kvm_device_attr { + __u32 flags; /* no flags currently defined */ + __u32 group; /* device-defined */ + __u64 attr; /* group-defined

Re: [RFC PATCH v2 1/6] kvm: add device control API

2013-04-03 Thread Scott Wood
On 04/03/2013 08:22:37 AM, Alexander Graf wrote: On 03.04.2013, at 04:17, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:19:56PM -0500, Scott Wood wrote: On 04/02/2013 08:02:39 PM, Paul Mackerras wrote: On Mon, Apr 01, 2013 at 05:47:48PM -0500, Scott Wood wrote: +4.79 KVM_CREATE_DEVICE

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/03/2013 01:32:26 PM, Stuart Yoder wrote: On Tue, Apr 2, 2013 at 5:50 PM, Scott Wood scottw...@freescale.com wrote: On 04/02/2013 04:38:45 PM, Alex Williamson wrote: On Tue, 2013-04-02 at 16:08 -0500, Stuart Yoder wrote: VFIO_IOMMU_MAP_MSI(iova, size) Not sure how you mean

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/03/2013 02:09:45 PM, Stuart Yoder wrote: Would is be possible for userspace to simply leave room for MSI bank mapping (how much room could be determined by something like VFIO_IOMMU_GET_MSI_BANK_COUNT) then document the API that userspace can DMA_MAP starting at the 0x0 address of

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/03/2013 02:09:45 PM, Stuart Yoder wrote: Would is be possible for userspace to simply leave room for MSI bank mapping (how much room could be determined by something like VFIO_IOMMU_GET_MSI_BANK_COUNT) then document the API that userspace can DMA_MAP starting at the 0x0 address of

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/03/2013 02:43:06 PM, Stuart Yoder wrote: On Wed, Apr 3, 2013 at 2:18 PM, Scott Wood scottw...@freescale.com wrote: On 04/03/2013 02:09:45 PM, Stuart Yoder wrote: Would is be possible for userspace to simply leave room for MSI bank mapping (how much room could be determined

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-03 Thread Scott Wood
On 04/03/2013 10:55:27 AM, Gleb Natapov wrote: On Tue, Apr 02, 2013 at 08:57:52PM -0500, Scott Wood wrote: Hook the MPIC code up to the KVM interfaces, add locking, etc. TODO: irqfd support, split up into multiple patches, KVM_IRQ_LINE support Signed-off-by: Scott Wood scottw

Re: [RFC PATCH v2 1/6] kvm: add device control API

2013-04-03 Thread Scott Wood
On 04/02/2013 09:17:58 PM, Paul Mackerras wrote: On Tue, Apr 02, 2013 at 08:19:56PM -0500, Scott Wood wrote: On 04/02/2013 08:02:39 PM, Paul Mackerras wrote: On Mon, Apr 01, 2013 at 05:47:48PM -0500, Scott Wood wrote: +4.79 KVM_CREATE_DEVICE + +Capability: KVM_CAP_DEVICE_CTRL I notice

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/02/2013 10:37:20 PM, Alex Williamson wrote: On Tue, 2013-04-02 at 17:50 -0500, Scott Wood wrote: On 04/02/2013 04:38:45 PM, Alex Williamson wrote: On Tue, 2013-04-02 at 16:08 -0500, Stuart Yoder wrote: On Tue, Apr 2, 2013 at 3:57 PM, Scott Wood scottw...@freescale.com wrote

Re: RFC: vfio API changes needed for powerpc

2013-04-03 Thread Scott Wood
On 04/02/2013 10:12:31 PM, Alex Williamson wrote: On Tue, 2013-04-02 at 17:44 -0500, Scott Wood wrote: On 04/02/2013 04:32:04 PM, Alex Williamson wrote: On Tue, 2013-04-02 at 15:57 -0500, Scott Wood wrote: On 04/02/2013 03:32:17 PM, Alex Williamson wrote: On x86 the interrupt remapper

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-03 Thread Scott Wood
On 04/03/2013 11:19:42 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: Hook the MPIC code up to the KVM interfaces, add locking, etc. TODO: irqfd support, split up into multiple patches, KVM_IRQ_LINE support Signed-off-by: Scott Wood scottw...@freescale.com --- v3

Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation

2013-04-03 Thread Scott Wood
On 04/03/2013 04:58:56 PM, Alexander Graf wrote: Am 03.04.2013 um 23:38 schrieb Scott Wood scottw...@freescale.com: On 04/03/2013 11:19:42 AM, Alexander Graf wrote: On 03.04.2013, at 03:57, Scott Wood wrote: Hook the MPIC code up to the KVM interfaces, add locking, etc. TODO: irqfd

<    1   2   3   4   5   6   7   8   9   10   >