From: Pavel Fedin <p.fedin@samsung.com>
To: 'Cornelia Huck' <cornelia.huck@de.ibm.com>
Cc: kvm@vger.kernel.org, 'Marc Zyngier' <marc.zyngier@arm.com>,
'Gleb Natapov' <gleb@kernel.org>,
'Paolo Bonzini' <pbonzini@redhat.com>,
kvmarm@lists.cs.columbia.edu
Subject: RE: [PATCH v5 2/2] KVM: Make KVM_CAP_IRQFD dependent on KVM_CAP_IRQCHIP
Date: Mon, 30 Nov 2015 15:41:20 +0300 [thread overview]
Message-ID: <017801d12b6c$6a7c2c00$3f748400$@samsung.com> (raw)
In-Reply-To: <20151130131331.78d98df5.cornelia.huck@de.ibm.com>
Hello!
> > Thank you for the note, i didn't know about irqchip-specific capability codes. There's the
> > same issue with PowerPC, now i
> > understand why there's no KVM_CAP_IRQCHIP for them. Because they have KVM_CAP_IRQ_MPIC and
> > KVM_CAP_IRQ_XICS, similar to S390.
> > But isn't it just weird? I understand that perhaps we have some real need to distinguish
> > between different irqchip types, but
> > shouldn't the kernel also publish KVM_CAP_IRQCHIP, which stands just for "we support some
> > irqchip virtualization"?
> > May be we should just add this for PowerPC and S390, to make things less ambiguous?
>
> Note that we explicitly need to _enable_ the s390 cap (for
> compatibility). I'd need to recall the exact details but I came to the
> conclusion back than that I could not simply enable KVM_CAP_IRQCHIP for
> s390 (and current qemu would fail to enable the s390 cap if we started
> advertising KVM_CAP_IRQCHIP now).
OMG... I've looked at the code, what a mess...
If i was implementing this, i'd simply introduce kvm_vm_enable_cap(s, KVM_CAP_IRQCHIP, 0),
which would be allowed to fail with -ENOSYS, so that backwards compatibility is kept and an existing API is reused... But, well,
it's already impossible to unscramble an egg... :)
Ok, i think in current situation we could choose one of these ways (both are based on the fact that it's obvious that irqfd require
IRQCHIP).
a) I look for an alternate way to report KVM_CAP_IRQFD dynamically, and maybe PowerPC and S390 follow this way.
b) I simply drop it as it is, because current qemu knows about the dependency and does not try to use irqfd without irqchip,
because there's simply no use for them. But, well, perhaps there would be an exception in vhost, i don't remember testing it.
So what shall we do?
Kind regards,
Pavel Fedin
Expert Engineer
Samsung Electronics Research center Russia
next prev parent reply other threads:[~2015-11-30 12:40 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-30 9:40 [PATCH v5 0/2] KVM: arm/arm64: Allow to use KVM without in-kernel irqchip Pavel Fedin
2015-11-30 9:40 ` [PATCH v5 1/2] arm/arm64: KVM: Detect vGIC presence at runtime Pavel Fedin
2016-04-21 21:41 ` Alexander Graf
2016-04-21 22:04 ` Peter Maydell
2016-04-21 22:35 ` Alexander Graf
2016-04-21 22:41 ` Peter Maydell
2016-04-22 7:50 ` Marc Zyngier
2015-11-30 9:40 ` [PATCH v5 2/2] KVM: Make KVM_CAP_IRQFD dependent on KVM_CAP_IRQCHIP Pavel Fedin
2015-11-30 11:26 ` Cornelia Huck
2015-11-30 11:56 ` Pavel Fedin
2015-11-30 12:13 ` Cornelia Huck
2015-11-30 12:41 ` Pavel Fedin [this message]
2015-11-30 14:38 ` Cornelia Huck
2015-11-30 14:45 ` Pavel Fedin
2015-12-01 11:07 ` Pavel Fedin
2015-12-01 16:00 ` Paolo Bonzini
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='017801d12b6c$6a7c2c00$3f748400$@samsung.com' \
--to=p.fedin@samsung.com \
--cc=cornelia.huck@de.ibm.com \
--cc=gleb@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=marc.zyngier@arm.com \
--cc=pbonzini@redhat.com \
/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