From: christoffer.dall@linaro.org (Christoffer Dall)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC v2 8/9] KVM: KVM-VFIO: generic KVM_DEV_VFIO_DEVICE command and IRQ forwarding control
Date: Thu, 11 Sep 2014 14:59:53 -0700 [thread overview]
Message-ID: <20140911215953.GJ5535@lvm> (raw)
In-Reply-To: <1410459250.2982.325.camel@ul30vt.home>
On Thu, Sep 11, 2014 at 12:14:10PM -0600, Alex Williamson wrote:
> On Thu, 2014-09-11 at 19:10 +0200, Christoffer Dall wrote:
> > On Wed, Sep 10, 2014 at 11:05:49PM -0600, Alex Williamson wrote:
> > > On Thu, 2014-09-11 at 05:10 +0200, Christoffer Dall wrote:
> > > > On Mon, Sep 01, 2014 at 02:52:47PM +0200, Eric Auger wrote:
> >
> > [...]
> >
> > > > >
> > > > > +#ifdef __KVM_HAVE_ARCH_KVM_VFIO_FORWARD
> > > > > +int kvm_arch_set_fwd_state(struct kvm_fwd_irq *pfwd,
> > > >
> > > > what's the 'p' in pfwd?
> > >
> > > p is for pointer?
> > >
> >
> > shouldn't the type declation spell out quite clearly to me that I'm
> > dealing with a pointer?
>
> Sure. In the cases where I've done similar things it's more a matter of
> not needing to come up with another variable, for instance if I need
> both a struct and a struct* I might call them foo and pfoo if I can't
> come up with anything more meaningful.
>
>
> > [...]
> >
> > > >
> > > > need some spaceing here, also, I would turn this around, first check if
> > > > the strcmp fails, and then error out, then do you next check etc., to
> > > > avoid so many nested statements.
> > > >
> > > > > + /* is a ref to this device already owned by the KVM-VFIO device? */
> > > >
> > > > this comment is not particularly helpful in its current form, it would
> > > > be helpful if you specified that we're checking whether that particular
> > > > device/irq combo is already registered.
> > > >
> > > > > + *kvm_vdev = kvm_vfio_find_device(kv, vdev);
> > > > > + if (*kvm_vdev) {
> > > > > + if (kvm_vfio_find_irq(*kvm_vdev, fwd_irq->index)) {
> > > > > + kvm_err("%s irq %d already forwarded\n",
> > > > > + __func__, *hwirq);
> > >
> > > Why didn't we do this first?
> > >
> > huh?
>
> The code is doing:
>
> 1. can the arch forward this irq
> 2. are we already forwarding this irq
>
> It's backwards, test for duplicates locally before calling out into arch
> code. Besides, I think the arch code here should go away and just be
> another error condition for the call-out. Thanks,
>
Ah, right, you meant for the whole check. I agree completely.
-Christoffer
next prev parent reply other threads:[~2014-09-11 21:59 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-01 12:52 [RFC v2 0/9] KVM-VFIO IRQ forward control Eric Auger
2014-09-01 12:52 ` [RFC v2 1/9] KVM: ARM: VGIC: fix multiple injection of level sensitive forwarded IRQ Eric Auger
2014-09-11 3:09 ` Christoffer Dall
2014-09-11 18:17 ` Eric Auger
2014-09-11 22:14 ` Christoffer Dall
2014-09-01 12:52 ` [RFC v2 2/9] KVM: ARM: VGIC: add forwarded irq rbtree lock Eric Auger
2014-09-11 3:09 ` Christoffer Dall
2014-09-11 17:31 ` Eric Auger
2014-09-01 12:52 ` [RFC v2 3/9] ARM: KVM: Enable the KVM-VFIO device Eric Auger
2014-09-01 12:52 ` [RFC v2 4/9] VFIO: platform: handler tests whether the IRQ is forwarded Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 8:44 ` Eric Auger
2014-09-11 17:05 ` Christoffer Dall
2014-09-11 18:07 ` Alex Williamson
2014-09-11 17:08 ` Antonios Motakis
2014-09-01 12:52 ` [RFC v2 5/9] KVM: KVM-VFIO: update user API to program forwarded IRQ Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 8:49 ` Eric Auger
2014-09-11 17:08 ` Christoffer Dall
2014-09-01 12:52 ` [RFC v2 6/9] VFIO: Extend external user API Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 8:50 ` Eric Auger
2014-09-01 12:52 ` [RFC v2 7/9] KVM: KVM-VFIO: add new VFIO external API hooks Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 8:51 ` Eric Auger
2014-09-01 12:52 ` [RFC v2 8/9] KVM: KVM-VFIO: generic KVM_DEV_VFIO_DEVICE command and IRQ forwarding control Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 5:05 ` Alex Williamson
2014-09-11 12:04 ` Eric Auger
2014-09-11 15:59 ` Alex Williamson
2014-09-11 17:24 ` Christoffer Dall
2014-09-11 17:22 ` Christoffer Dall
2014-09-11 17:10 ` Christoffer Dall
2014-09-11 18:14 ` Alex Williamson
2014-09-11 21:59 ` Christoffer Dall [this message]
2014-09-11 9:35 ` Eric Auger
2014-09-11 15:47 ` Alex Williamson
2014-09-11 17:32 ` Christoffer Dall
2014-09-01 12:52 ` [RFC v2 9/9] KVM: KVM-VFIO: ARM " Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-02 21:05 ` [RFC v2 0/9] KVM-VFIO IRQ forward control Alex Williamson
2014-09-05 12:52 ` Eric Auger
2014-09-11 3:10 ` Christoffer Dall
2014-09-11 5:09 ` Alex Williamson
2014-11-17 11:25 ` Wu, Feng
2014-11-17 13:41 ` Eric Auger
2014-11-17 13:45 ` Wu, Feng
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=20140911215953.GJ5535@lvm \
--to=christoffer.dall@linaro.org \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).