From: Scott Wood <scottwood@freescale.com>
To: Alexander Graf <agraf@suse.de>
Cc: kvm-ppc@vger.kernel.org, kvm@vger.kernel.org, paulus@samba.org
Subject: Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation
Date: Wed, 03 Apr 2013 21:38:30 +0000 [thread overview]
Message-ID: <1365025110.25627.15@snotra> (raw)
In-Reply-To: <A6072B5C-C638-4DDB-8269-5BDF211C5701@suse.de> (from agraf@suse.de on Wed Apr 3 11:19:42 2013)
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 <scottwood@freescale.com>
> > ---
> > v3: mpic_put -> kvmppc_mpic_put
> >
> >
>
> [...]
>
> > +void kvmppc_mpic_set_epr(struct kvm_vcpu *vcpu);
> > +
> > int kvm_vcpu_ioctl_config_tlb(struct kvm_vcpu *vcpu,
> > struct kvm_config_tlb *cfg);
> > int kvm_vcpu_ioctl_dirty_tlb(struct kvm_vcpu *vcpu,
> > diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
> > index 63c67ec..a87139b 100644
> > --- a/arch/powerpc/kvm/Kconfig
> > +++ b/arch/powerpc/kvm/Kconfig
> > @@ -151,6 +151,11 @@ config KVM_E500MC
> >
> > If unsure, say N.
> >
> > +config KVM_MPIC
> > + bool "KVM in-kernel MPIC emulation"
> > + depends on KVM
>
> This should probably depend on FSL KVM for now, until someone adds
> support for other MPIC revisions.
I don't see a symbol specifically for "FSL KVM". What part of the MPIC
code depends on booke or any FSL-specific code?
> > struct irq_dest {
> > + struct kvm_vcpu *vcpu;
> > +
> > int32_t ctpr; /* CPU current task priority */
> > struct irq_queue raised;
> > struct irq_queue servicing;
> > - qemu_irq *irqs;
> >
> > /* Count of IRQ sources asserting on non-INT outputs */
> > - uint32_t outputs_active[OPENPIC_OUTPUT_NB];
> > + uint32_t outputs_active[NUM_OUTPUTS];
> > };
> >
> > +struct openpic;
>
> Isn't this superfluous?
Yes, will remove. Probably a leftover from when there was other stuff
in between that referenced it.
> > @@ -731,8 +771,8 @@ static uint64_t openpic_gbl_read(void *opaque,
> gpa_t addr, unsigned len)
> > case 0x90:
> > case 0xA0:
> > case 0xB0:
> > - retval > > - openpic_cpu_read_internal(opp, addr,
> get_current_cpu());
> > + retval = openpic_cpu_read_internal(opp, addr,
> > + &retval, get_current_cpu());
>
> This looks bogus. You're passing &retval and overwrite it with the
> return value right after the function returns?
Yeah, will fix. Thanks for spotting it.
> > +static int kvm_mpic_read(struct kvm_io_device *this, gpa_t addr,
> > + int len, void *ptr)
> > +{
> > + struct openpic *opp = container_of(this, struct openpic, mmio);
> > + int ret;
> > +
> > + /*
> > + * Technically only 32-bit accesses are allowed, but be nice to
> > + * people dumping registers a byte at a time -- it works in real
> > + * hardware (reads only, not writes).
>
> Do 16-bit accesses work in real hardware?
Probably, though according to the documentation only 32-bit accesses
should be used. As the comment says, I'm just being nice to hexdumps
and such, which are unlikely to use 16-bit accesses.
> > + */
> > + if (len = 4) {
> > + if (addr & 3) {
> > + pr_debug("%s: bad alignment %llx/%d\n",
> > + __func__, addr, len);
> > + return -EINVAL;
> > + }
>
> if (addr & (len - 1))
>
> Then the read_internal call can be shared between the different
> access sizes, no?
Not as is, because the read_internal call passes a different pointer in
the two different cases. I originally tried to write this with more in
common between the two cases, and it got a bit messy. I'll give it
another shot, though.
> > + spin_lock_irq(&opp->lock);
> > + ret = kvm_mpic_read_internal(opp, addr - opp->reg_base,
> ptr);
> > + spin_unlock_irq(&opp->lock);
> > +
> > + pr_debug("%s: addr %llx ret %d len 4 val %x\n",
> > + __func__, addr, ret, *(const u32 *)ptr);
> > + } else if (len = 1) {
> > + union {
> > + u32 val;
> > + u8 bytes[4];
> > + } u;
> > +
> > + spin_lock_irq(&opp->lock);
> > + ret = kvm_mpic_read_internal(opp, addr - opp->reg_base,
> &u.val);
> > + spin_unlock_irq(&opp->lock);
> > +
> > + *(u8 *)ptr = u.bytes[addr & 3];
> > +
> > + pr_debug("%s: addr %llx ret %d len 1 val %x\n",
> > + __func__, addr, ret, *(const u8 *)ptr);
> > + } else {
> > + pr_debug("%s: bad length %d\n", __func__, len);
> > + return -EINVAL;
> > + }
> > +
> > + return ret;
> > +}
> > +
>
> [...]
>
> >
> > +static int mpic_set_attr(struct openpic *opp, struct
> kvm_device_attr *attr)
> > +{
> > + u32 attr32;
> > +
> > + switch (attr->group) {
> > + case KVM_DEV_MPIC_GRP_MISC:
> > + switch (attr->attr) {
> > + case KVM_DEV_MPIC_BASE_ADDR:
> > + return set_base_addr(opp, attr);
> > + }
> > +
> > + break;
> > +
> > + case KVM_DEV_MPIC_GRP_REGISTER:
> > + if (copy_from_user(&attr32, (u32 __user
> *)(long)attr->addr,
> > + sizeof(u32)))
>
> get_user?
OK.
> > + switch (attr->group) {
> > + case KVM_DEV_MPIC_GRP_MISC:
> > + switch (attr->attr) {
> > + case KVM_DEV_MPIC_BASE_ADDR:
> > + mutex_lock(&opp->kvm->slots_lock);
> > + attr64 = opp->reg_base;
> > + mutex_unlock(&opp->kvm->slots_lock);
> > +
> > + if (copy_to_user((u64 __user *)(long)attr->addr,
> > + &attr64, sizeof(u64)))
>
> u64 is tricky with put_user on 32bit hosts, so here copy_to_user
> makes sense
What are the issues with put_user? It looks like it's supported with a
pair of "stw" instructions.
> > + case KVM_DEV_MPIC_GRP_IRQ_ACTIVE:
> > + if (attr->attr > MAX_SRC)
> > + return -EINVAL;
> > +
> > + attr32 = opp->src[attr->attr].pending;
>
> Isn't this missing a lock?
I don't see why it needs one. If the pending status changes during the
ioctl, it's undefined which state you'll read back, and a lock wouldn't
change that (you could end up taking the lock before or after the
change gets made).
reg_base above was a different situation -- it's 64-bit, so we can't
read it atomically on 32-bit.
-Scott
WARNING: multiple messages have this Message-ID (diff)
From: Scott Wood <scottwood@freescale.com>
To: Alexander Graf <agraf@suse.de>
Cc: <kvm-ppc@vger.kernel.org>, <kvm@vger.kernel.org>, <paulus@samba.org>
Subject: Re: [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation
Date: Wed, 3 Apr 2013 16:38:30 -0500 [thread overview]
Message-ID: <1365025110.25627.15@snotra> (raw)
In-Reply-To: <A6072B5C-C638-4DDB-8269-5BDF211C5701@suse.de> (from agraf@suse.de on Wed Apr 3 11:19:42 2013)
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 <scottwood@freescale.com>
> > ---
> > v3: mpic_put -> kvmppc_mpic_put
> >
> >
>
> [...]
>
> > +void kvmppc_mpic_set_epr(struct kvm_vcpu *vcpu);
> > +
> > int kvm_vcpu_ioctl_config_tlb(struct kvm_vcpu *vcpu,
> > struct kvm_config_tlb *cfg);
> > int kvm_vcpu_ioctl_dirty_tlb(struct kvm_vcpu *vcpu,
> > diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
> > index 63c67ec..a87139b 100644
> > --- a/arch/powerpc/kvm/Kconfig
> > +++ b/arch/powerpc/kvm/Kconfig
> > @@ -151,6 +151,11 @@ config KVM_E500MC
> >
> > If unsure, say N.
> >
> > +config KVM_MPIC
> > + bool "KVM in-kernel MPIC emulation"
> > + depends on KVM
>
> This should probably depend on FSL KVM for now, until someone adds
> support for other MPIC revisions.
I don't see a symbol specifically for "FSL KVM". What part of the MPIC
code depends on booke or any FSL-specific code?
> > struct irq_dest {
> > + struct kvm_vcpu *vcpu;
> > +
> > int32_t ctpr; /* CPU current task priority */
> > struct irq_queue raised;
> > struct irq_queue servicing;
> > - qemu_irq *irqs;
> >
> > /* Count of IRQ sources asserting on non-INT outputs */
> > - uint32_t outputs_active[OPENPIC_OUTPUT_NB];
> > + uint32_t outputs_active[NUM_OUTPUTS];
> > };
> >
> > +struct openpic;
>
> Isn't this superfluous?
Yes, will remove. Probably a leftover from when there was other stuff
in between that referenced it.
> > @@ -731,8 +771,8 @@ static uint64_t openpic_gbl_read(void *opaque,
> gpa_t addr, unsigned len)
> > case 0x90:
> > case 0xA0:
> > case 0xB0:
> > - retval =
> > - openpic_cpu_read_internal(opp, addr,
> get_current_cpu());
> > + retval = openpic_cpu_read_internal(opp, addr,
> > + &retval, get_current_cpu());
>
> This looks bogus. You're passing &retval and overwrite it with the
> return value right after the function returns?
Yeah, will fix. Thanks for spotting it.
> > +static int kvm_mpic_read(struct kvm_io_device *this, gpa_t addr,
> > + int len, void *ptr)
> > +{
> > + struct openpic *opp = container_of(this, struct openpic, mmio);
> > + int ret;
> > +
> > + /*
> > + * Technically only 32-bit accesses are allowed, but be nice to
> > + * people dumping registers a byte at a time -- it works in real
> > + * hardware (reads only, not writes).
>
> Do 16-bit accesses work in real hardware?
Probably, though according to the documentation only 32-bit accesses
should be used. As the comment says, I'm just being nice to hexdumps
and such, which are unlikely to use 16-bit accesses.
> > + */
> > + if (len == 4) {
> > + if (addr & 3) {
> > + pr_debug("%s: bad alignment %llx/%d\n",
> > + __func__, addr, len);
> > + return -EINVAL;
> > + }
>
> if (addr & (len - 1))
>
> Then the read_internal call can be shared between the different
> access sizes, no?
Not as is, because the read_internal call passes a different pointer in
the two different cases. I originally tried to write this with more in
common between the two cases, and it got a bit messy. I'll give it
another shot, though.
> > + spin_lock_irq(&opp->lock);
> > + ret = kvm_mpic_read_internal(opp, addr - opp->reg_base,
> ptr);
> > + spin_unlock_irq(&opp->lock);
> > +
> > + pr_debug("%s: addr %llx ret %d len 4 val %x\n",
> > + __func__, addr, ret, *(const u32 *)ptr);
> > + } else if (len == 1) {
> > + union {
> > + u32 val;
> > + u8 bytes[4];
> > + } u;
> > +
> > + spin_lock_irq(&opp->lock);
> > + ret = kvm_mpic_read_internal(opp, addr - opp->reg_base,
> &u.val);
> > + spin_unlock_irq(&opp->lock);
> > +
> > + *(u8 *)ptr = u.bytes[addr & 3];
> > +
> > + pr_debug("%s: addr %llx ret %d len 1 val %x\n",
> > + __func__, addr, ret, *(const u8 *)ptr);
> > + } else {
> > + pr_debug("%s: bad length %d\n", __func__, len);
> > + return -EINVAL;
> > + }
> > +
> > + return ret;
> > +}
> > +
>
> [...]
>
> >
> > +static int mpic_set_attr(struct openpic *opp, struct
> kvm_device_attr *attr)
> > +{
> > + u32 attr32;
> > +
> > + switch (attr->group) {
> > + case KVM_DEV_MPIC_GRP_MISC:
> > + switch (attr->attr) {
> > + case KVM_DEV_MPIC_BASE_ADDR:
> > + return set_base_addr(opp, attr);
> > + }
> > +
> > + break;
> > +
> > + case KVM_DEV_MPIC_GRP_REGISTER:
> > + if (copy_from_user(&attr32, (u32 __user
> *)(long)attr->addr,
> > + sizeof(u32)))
>
> get_user?
OK.
> > + switch (attr->group) {
> > + case KVM_DEV_MPIC_GRP_MISC:
> > + switch (attr->attr) {
> > + case KVM_DEV_MPIC_BASE_ADDR:
> > + mutex_lock(&opp->kvm->slots_lock);
> > + attr64 = opp->reg_base;
> > + mutex_unlock(&opp->kvm->slots_lock);
> > +
> > + if (copy_to_user((u64 __user *)(long)attr->addr,
> > + &attr64, sizeof(u64)))
>
> u64 is tricky with put_user on 32bit hosts, so here copy_to_user
> makes sense
What are the issues with put_user? It looks like it's supported with a
pair of "stw" instructions.
> > + case KVM_DEV_MPIC_GRP_IRQ_ACTIVE:
> > + if (attr->attr > MAX_SRC)
> > + return -EINVAL;
> > +
> > + attr32 = opp->src[attr->attr].pending;
>
> Isn't this missing a lock?
I don't see why it needs one. If the pending status changes during the
ioctl, it's undefined which state you'll read back, and a lock wouldn't
change that (you could end up taking the lock before or after the
change gets made).
reg_base above was a different situation -- it's 64-bit, so we can't
read it atomically on 32-bit.
-Scott
next prev parent reply other threads:[~2013-04-03 21:38 UTC|newest]
Thread overview: 261+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-14 5:49 [RFC PATCH 0/6] kvm/ppc/mpic: in-kernel irqchip Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-14 5:49 ` [RFC PATCH 1/6] kvm: add device control API Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-18 12:21 ` Gleb Natapov
2013-02-18 12:21 ` Gleb Natapov
2013-02-18 23:01 ` Scott Wood
2013-02-18 23:01 ` Scott Wood
2013-02-19 0:43 ` Christoffer Dall
2013-02-19 0:43 ` Christoffer Dall
2013-02-19 12:24 ` Gleb Natapov
2013-02-19 12:24 ` Gleb Natapov
2013-02-19 15:51 ` Christoffer Dall
2013-02-19 15:51 ` Christoffer Dall
2013-02-19 21:16 ` Scott Wood
2013-02-19 21:16 ` Scott Wood
2013-02-20 13:09 ` Gleb Natapov
2013-02-20 13:09 ` Gleb Natapov
2013-02-20 21:28 ` Marcelo Tosatti
2013-02-20 21:28 ` Marcelo Tosatti
2013-02-20 22:44 ` Marcelo Tosatti
2013-02-20 22:44 ` Marcelo Tosatti
2013-02-20 23:53 ` Scott Wood
2013-02-20 23:53 ` Scott Wood
2013-02-21 0:14 ` Marcelo Tosatti
2013-02-21 0:14 ` Marcelo Tosatti
2013-02-21 1:28 ` Scott Wood
2013-02-21 1:28 ` Scott Wood
2013-02-21 6:39 ` Gleb Natapov
2013-02-21 6:39 ` Gleb Natapov
2013-02-21 23:03 ` Marcelo Tosatti
2013-02-21 23:03 ` Marcelo Tosatti
2013-02-22 2:00 ` Scott Wood
2013-02-22 2:00 ` Scott Wood
2013-02-23 15:04 ` Marcelo Tosatti
2013-02-23 15:04 ` Marcelo Tosatti
2013-02-26 0:27 ` Scott Wood
2013-02-26 0:27 ` Scott Wood
2013-02-21 2:05 ` Scott Wood
2013-02-21 2:05 ` Scott Wood
2013-02-21 8:22 ` Gleb Natapov
2013-02-21 8:22 ` Gleb Natapov
2013-02-22 2:17 ` Scott Wood
2013-02-22 2:17 ` Scott Wood
2013-02-24 15:46 ` Gleb Natapov
2013-02-24 15:46 ` Gleb Natapov
2013-02-25 15:23 ` Alexander Graf
2013-02-25 15:23 ` Alexander Graf
2013-02-26 2:38 ` Scott Wood
2013-02-26 2:38 ` Scott Wood
2013-02-20 21:17 ` Marcelo Tosatti
2013-02-20 21:17 ` Marcelo Tosatti
2013-02-20 23:20 ` Scott Wood
2013-02-20 23:20 ` Scott Wood
2013-02-21 0:01 ` Marcelo Tosatti
2013-02-21 0:01 ` Marcelo Tosatti
2013-02-21 0:33 ` Scott Wood
2013-02-21 0:33 ` Scott Wood
2013-02-25 1:11 ` Paul Mackerras
2013-02-25 1:11 ` Paul Mackerras
2013-02-25 13:09 ` Gleb Natapov
2013-02-25 13:09 ` Gleb Natapov
2013-02-25 15:29 ` Alexander Graf
2013-02-25 15:29 ` Alexander Graf
2013-02-19 0:44 ` Christoffer Dall
2013-02-19 0:44 ` Christoffer Dall
2013-02-19 0:53 ` Scott Wood
2013-02-19 0:53 ` Scott Wood
2013-02-19 5:50 ` Christoffer Dall
2013-02-19 5:50 ` Christoffer Dall
2013-02-19 12:45 ` Gleb Natapov
2013-02-19 12:45 ` Gleb Natapov
2013-02-19 20:16 ` Scott Wood
2013-02-19 20:16 ` Scott Wood
2013-02-20 2:16 ` Christoffer Dall
2013-02-20 2:16 ` Christoffer Dall
2013-02-24 13:12 ` Marc Zyngier
2013-02-24 13:12 ` Marc Zyngier
2013-03-06 0:59 ` Paul Mackerras
2013-03-06 0:59 ` Paul Mackerras
2013-03-06 1:20 ` Scott Wood
2013-03-06 1:20 ` Scott Wood
2013-03-06 2:48 ` Benjamin Herrenschmidt
2013-03-06 2:48 ` Benjamin Herrenschmidt
2013-03-06 3:36 ` Scott Wood
2013-03-06 3:36 ` Scott Wood
2013-03-06 4:28 ` Benjamin Herrenschmidt
2013-03-06 4:28 ` Benjamin Herrenschmidt
2013-03-06 10:18 ` Gleb Natapov
2013-03-06 10:18 ` Gleb Natapov
2013-02-14 5:49 ` [RFC PATCH 2/6] kvm/ppc: add a notifier chain for vcpu creation/destruction Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-14 5:49 ` [RFC PATCH 3/6] kvm/ppc/mpic: import hw/openpic.c from QEMU Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-14 5:49 ` [RFC PATCH 4/6] kvm/ppc/mpic: remove some obviously unneeded code Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-14 5:49 ` [RFC PATCH 5/6] kvm/ppc/mpic: adapt to kernel style and environment Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-02-14 5:49 ` [RFC PATCH 6/6] kvm/ppc/mpic: in-kernel MPIC emulation Scott Wood
2013-02-14 5:49 ` Scott Wood
2013-03-21 8:28 ` Alexander Graf
2013-03-21 8:28 ` Alexander Graf
2013-03-21 14:43 ` Scott Wood
2013-03-21 14:43 ` Scott Wood
2013-03-21 14:52 ` Alexander Graf
2013-03-21 14:52 ` Alexander Graf
2013-02-18 12:04 ` [RFC PATCH 0/6] kvm/ppc/mpic: in-kernel irqchip Gleb Natapov
2013-02-18 12:04 ` Gleb Natapov
2013-02-18 23:05 ` Scott Wood
2013-02-18 23:05 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 0/6] device control and in-kernel MPIC Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 1/6] kvm: add device control API Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-02 6:59 ` tiejun.chen
2013-04-02 6:59 ` tiejun.chen
[not found] ` <1364923807.24520.2@snotra>
2013-04-03 1:28 ` tiejun.chen
2013-04-03 1:28 ` tiejun.chen
[not found] ` <1364952853.8690.3@snotra>
2013-04-03 1:42 ` tiejun.chen
2013-04-03 1:42 ` tiejun.chen
2013-04-03 1:02 ` Paul Mackerras
2013-04-03 1:02 ` Paul Mackerras
2013-04-03 1:19 ` Scott Wood
2013-04-03 1:19 ` Scott Wood
2013-04-03 2:17 ` Paul Mackerras
2013-04-03 2:17 ` Paul Mackerras
2013-04-03 13:22 ` Alexander Graf
2013-04-03 13:22 ` Alexander Graf
2013-04-03 17:37 ` Scott Wood
2013-04-03 17:37 ` Scott Wood
2013-04-03 17:39 ` Alexander Graf
2013-04-03 17:39 ` Alexander Graf
2013-04-04 9:58 ` Gleb Natapov
2013-04-04 9:58 ` Gleb Natapov
2013-04-03 21:03 ` Scott Wood
2013-04-03 21:03 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 2/6] kvm/ppc/mpic: import hw/openpic.c from QEMU Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 3/6] kvm/ppc/mpic: remove some obviously unneeded code Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 4/6] kvm/ppc/mpic: adapt to kernel style and environment Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 5/6] kvm/ppc/mpic: in-kernel MPIC emulation Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-01 22:47 ` [RFC PATCH v2 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Scott Wood
2013-04-01 22:47 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 0/6] device control and in-kernel MPIC Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 1/6] kvm: add device control API Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 15:13 ` Alexander Graf
2013-04-03 15:13 ` Alexander Graf
2013-04-04 10:41 ` Gleb Natapov
2013-04-04 10:41 ` Gleb Natapov
2013-04-04 23:47 ` Scott Wood
2013-04-04 23:47 ` Scott Wood
2013-04-08 10:34 ` Gleb Natapov
2013-04-08 10:34 ` Gleb Natapov
2013-04-05 1:02 ` Paul Mackerras
2013-04-05 1:02 ` Paul Mackerras
2013-04-08 10:37 ` Gleb Natapov
2013-04-08 10:37 ` Gleb Natapov
2013-04-08 5:33 ` Paul Mackerras
2013-04-08 5:33 ` Paul Mackerras
2013-04-09 0:50 ` Scott Wood
2013-04-09 0:50 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 2/6] kvm/ppc/mpic: import hw/openpic.c from QEMU Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 3/6] kvm/ppc/mpic: remove some obviously unneeded code Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 4/6] kvm/ppc/mpic: adapt to kernel style and environment Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 5/6] kvm/ppc/mpic: in-kernel MPIC emulation Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-03 15:55 ` Gleb Natapov
2013-04-03 15:55 ` Gleb Natapov
2013-04-03 20:58 ` Scott Wood
2013-04-03 20:58 ` Scott Wood
2013-04-04 5:59 ` Gleb Natapov
2013-04-04 5:59 ` Gleb Natapov
2013-04-04 23:33 ` Scott Wood
2013-04-04 23:33 ` Scott Wood
2013-04-08 10:39 ` Gleb Natapov
2013-04-08 10:39 ` Gleb Natapov
2013-04-03 16:19 ` Alexander Graf
2013-04-03 16:19 ` Alexander Graf
2013-04-03 21:38 ` Scott Wood [this message]
2013-04-03 21:38 ` Scott Wood
2013-04-03 21:58 ` Alexander Graf
2013-04-03 21:58 ` Alexander Graf
2013-04-03 22:07 ` Scott Wood
2013-04-03 22:07 ` Scott Wood
2013-04-03 22:12 ` Alexander Graf
2013-04-03 22:12 ` Alexander Graf
2013-04-03 22:54 ` Scott Wood
2013-04-03 22:54 ` Scott Wood
2013-04-04 9:42 ` Alexander Graf
2013-04-04 9:42 ` Alexander Graf
2013-04-03 23:23 ` Scott Wood
2013-04-03 23:23 ` Scott Wood
2013-04-03 23:23 ` Scott Wood
2013-04-08 6:30 ` Paul Mackerras
2013-04-08 6:30 ` Paul Mackerras
2013-04-09 0:49 ` Scott Wood
2013-04-09 0:49 ` Scott Wood
2013-04-03 1:57 ` [RFC PATCH v3 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Scott Wood
2013-04-03 1:57 ` Scott Wood
2013-04-04 12:54 ` Alexander Graf
2013-04-04 12:54 ` Alexander Graf
2013-04-04 18:41 ` Scott Wood
2013-04-04 18:41 ` Scott Wood
2013-04-04 22:30 ` Alexander Graf
2013-04-04 22:30 ` Alexander Graf
2013-04-04 22:35 ` Scott Wood
2013-04-04 22:35 ` Scott Wood
2013-04-05 6:09 ` Alexander Graf
2013-04-05 6:09 ` Alexander Graf
2013-04-05 17:11 ` Scott Wood
2013-04-05 17:11 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 0/6] device-control and in-kernel MPIC Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 1/6] kvm: add device control API Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-25 9:43 ` Gleb Natapov
2013-04-25 9:43 ` Gleb Natapov
2013-04-25 10:47 ` Alexander Graf
2013-04-25 10:47 ` Alexander Graf
2013-04-25 12:07 ` Gleb Natapov
2013-04-25 12:07 ` Gleb Natapov
2013-04-25 13:45 ` Alexander Graf
2013-04-25 13:45 ` Alexander Graf
2013-04-25 13:51 ` Gleb Natapov
2013-04-25 13:51 ` Gleb Natapov
2013-04-25 16:51 ` Scott Wood
2013-04-25 16:51 ` Scott Wood
2013-04-25 18:22 ` Gleb Natapov
2013-04-25 18:22 ` Gleb Natapov
2013-04-25 18:59 ` Scott Wood
2013-04-25 18:59 ` Scott Wood
2013-04-26 9:53 ` Gleb Natapov
2013-04-26 9:53 ` Gleb Natapov
2013-04-26 9:55 ` Alexander Graf
2013-04-26 9:55 ` Alexander Graf
2013-04-26 9:57 ` Gleb Natapov
2013-04-26 9:57 ` Gleb Natapov
2013-04-13 0:08 ` [PATCH v4 2/6] kvm/ppc/mpic: import hw/openpic.c from QEMU Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 3/6] kvm/ppc/mpic: remove some obviously unneeded code Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 4/6] kvm/ppc/mpic: adapt to kernel style and environment Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 5/6] kvm/ppc/mpic: in-kernel MPIC emulation Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-13 0:08 ` [PATCH v4 6/6] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Scott Wood
2013-04-13 0:08 ` Scott Wood
2013-04-15 5:23 ` Paul Mackerras
2013-04-15 5:23 ` Paul Mackerras
2013-04-15 17:52 ` Scott Wood
2013-04-15 17:52 ` Scott Wood
2013-04-16 3:59 ` Paul Mackerras
2013-04-16 3:59 ` Paul Mackerras
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=1365025110.25627.15@snotra \
--to=scottwood@freescale.com \
--cc=agraf@suse.de \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=paulus@samba.org \
/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.