All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, Jan Kiszka <jan.kiszka@web.de>,
	Avi Kivity <avi@redhat.com>,
	kvm@vger.kernel.org, patches@linaro.org
Subject: Re: [Qemu-devel] [PATCH] kvm-all.c: Move init of irqchip_inject_ioctl out of kvm_irqchip_create()
Date: Mon, 13 Aug 2012 17:45:23 -0300	[thread overview]
Message-ID: <20120813204523.GB10099@amt.cnet> (raw)
In-Reply-To: <CAFEAcA_tS6cBe_DUPGzB-L+XYiyhVPeY1OarMgcpH+TpyNFnNA@mail.gmail.com>

On Sun, Aug 12, 2012 at 02:13:52PM +0100, Peter Maydell wrote:
> Ping? I don't think this one quite made it into Avi's pullreq...

Please post this with the rest of the code to support the new
s->irqchip_inject_ioctl value.

> thanks
> -- PMM
> 
> On 6 August 2012 18:05, Peter Maydell <peter.maydell@linaro.org> wrote:
> > Move the init of the irqchip_inject_ioctl field of KVMState out of
> > kvm_irqchip_create() and into kvm_init(), so that kvm_set_irq()
> > can be used even when no irqchip is created (for architectures
> > that support async interrupt notification even without an in
> > kernel irqchip).
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> > We can't just set irqchip_inject_ioctl in target-*/kvm.c because
> > the KVMState struct layout is private to kvm-all.c. Moving the
> > default initialisation of this field seemed the simplest approach.
> > It's safe because the use in kvm_set_irq() is guarded by a check of
> > kvm_async_interrupts_enabled().
> >
> > The other approach would be to have a helper function for setting
> > the field, but that seems overkill when KVM_IRQ_LINE is the standard
> > default value. (KVM_IRQ_LINE_STATUS seems to be undocumented,
> > incidentally. I am going to assume it's another x86ism until somebody
> > does document it :-))
> >
> >  kvm-all.c |    3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/kvm-all.c b/kvm-all.c
> > index 6def6c9..9a1f001 100644
> > --- a/kvm-all.c
> > +++ b/kvm-all.c
> > @@ -1200,7 +1200,6 @@ static int kvm_irqchip_create(KVMState *s)
> >          return ret;
> >      }
> >
> > -    s->irqchip_inject_ioctl = KVM_IRQ_LINE;
> >      if (kvm_check_extension(s, KVM_CAP_IRQ_INJECT_STATUS)) {
> >          s->irqchip_inject_ioctl = KVM_IRQ_LINE_STATUS;
> >      }
> > @@ -1321,6 +1320,8 @@ int kvm_init(void)
> >      s->direct_msi = (kvm_check_extension(s, KVM_CAP_SIGNAL_MSI) > 0);
> >  #endif
> >
> > +    s->irqchip_inject_ioctl = KVM_IRQ_LINE;
> > +
> >      ret = kvm_arch_init(s);
> >      if (ret < 0) {
> >          goto err;
> > --
> > 1.7.9.5
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: patches@linaro.org, Jan Kiszka <jan.kiszka@web.de>,
	qemu-devel@nongnu.org, kvm@vger.kernel.org,
	Avi Kivity <avi@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] kvm-all.c: Move init of irqchip_inject_ioctl out of kvm_irqchip_create()
Date: Mon, 13 Aug 2012 17:45:23 -0300	[thread overview]
Message-ID: <20120813204523.GB10099@amt.cnet> (raw)
In-Reply-To: <CAFEAcA_tS6cBe_DUPGzB-L+XYiyhVPeY1OarMgcpH+TpyNFnNA@mail.gmail.com>

On Sun, Aug 12, 2012 at 02:13:52PM +0100, Peter Maydell wrote:
> Ping? I don't think this one quite made it into Avi's pullreq...

Please post this with the rest of the code to support the new
s->irqchip_inject_ioctl value.

> thanks
> -- PMM
> 
> On 6 August 2012 18:05, Peter Maydell <peter.maydell@linaro.org> wrote:
> > Move the init of the irqchip_inject_ioctl field of KVMState out of
> > kvm_irqchip_create() and into kvm_init(), so that kvm_set_irq()
> > can be used even when no irqchip is created (for architectures
> > that support async interrupt notification even without an in
> > kernel irqchip).
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> > We can't just set irqchip_inject_ioctl in target-*/kvm.c because
> > the KVMState struct layout is private to kvm-all.c. Moving the
> > default initialisation of this field seemed the simplest approach.
> > It's safe because the use in kvm_set_irq() is guarded by a check of
> > kvm_async_interrupts_enabled().
> >
> > The other approach would be to have a helper function for setting
> > the field, but that seems overkill when KVM_IRQ_LINE is the standard
> > default value. (KVM_IRQ_LINE_STATUS seems to be undocumented,
> > incidentally. I am going to assume it's another x86ism until somebody
> > does document it :-))
> >
> >  kvm-all.c |    3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/kvm-all.c b/kvm-all.c
> > index 6def6c9..9a1f001 100644
> > --- a/kvm-all.c
> > +++ b/kvm-all.c
> > @@ -1200,7 +1200,6 @@ static int kvm_irqchip_create(KVMState *s)
> >          return ret;
> >      }
> >
> > -    s->irqchip_inject_ioctl = KVM_IRQ_LINE;
> >      if (kvm_check_extension(s, KVM_CAP_IRQ_INJECT_STATUS)) {
> >          s->irqchip_inject_ioctl = KVM_IRQ_LINE_STATUS;
> >      }
> > @@ -1321,6 +1320,8 @@ int kvm_init(void)
> >      s->direct_msi = (kvm_check_extension(s, KVM_CAP_SIGNAL_MSI) > 0);
> >  #endif
> >
> > +    s->irqchip_inject_ioctl = KVM_IRQ_LINE;
> > +
> >      ret = kvm_arch_init(s);
> >      if (ret < 0) {
> >          goto err;
> > --
> > 1.7.9.5
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2012-08-13 20:56 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-06 17:05 [PATCH] kvm-all.c: Move init of irqchip_inject_ioctl out of kvm_irqchip_create() Peter Maydell
2012-08-06 17:05 ` [Qemu-devel] " Peter Maydell
2012-08-12 13:13 ` Peter Maydell
2012-08-12 13:13   ` [Qemu-devel] " Peter Maydell
2012-08-13 20:45   ` Marcelo Tosatti [this message]
2012-08-13 20:45     ` Marcelo Tosatti
2012-08-13 21:40     ` Peter Maydell
2012-08-13 21:40       ` Peter Maydell
2012-08-14  7:33 ` Jan Kiszka
2012-08-14  7:33   ` [Qemu-devel] " Jan Kiszka
2012-08-14  7:40   ` Peter Maydell
2012-08-14  7:40     ` [Qemu-devel] " Peter Maydell
2012-08-14  7:42     ` Jan Kiszka
2012-08-14  7:42       ` [Qemu-devel] " Jan Kiszka
2012-08-14  7:52       ` Peter Maydell
2012-08-14  7:52         ` [Qemu-devel] " Peter Maydell
2012-08-14  8:09         ` Jan Kiszka
2012-08-14  8:09           ` [Qemu-devel] " Jan Kiszka
2012-08-14 13:10           ` Peter Maydell
2012-08-14 13:10             ` [Qemu-devel] " Peter Maydell
2012-08-14 13:27             ` Jan Kiszka
2012-08-14 13:27               ` [Qemu-devel] " Jan Kiszka
2012-08-14 11:01   ` Avi Kivity
2012-08-14 11:01     ` [Qemu-devel] " Avi Kivity
2012-08-14 11:05     ` Jan Kiszka
2012-08-14 11:05       ` [Qemu-devel] " Jan Kiszka
2012-08-14 13:14       ` Avi Kivity
2012-08-14 13:14         ` [Qemu-devel] " Avi Kivity
2012-08-14 13:36         ` Jan Kiszka
2012-08-14 13:36           ` [Qemu-devel] " Jan Kiszka
2012-08-14  7:36 ` Jan Kiszka
2012-08-14  7:36   ` [Qemu-devel] " Jan Kiszka

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=20120813204523.GB10099@amt.cnet \
    --to=mtosatti@redhat.com \
    --cc=avi@redhat.com \
    --cc=jan.kiszka@web.de \
    --cc=kvm@vger.kernel.org \
    --cc=patches@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.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.