All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Radim Krčmář" <rkrcmar@redhat.com>
To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	"Lan, Tianyu" <tianyu.lan@intel.com>,
	Igor Mammedov <imammedo@redhat.com>,
	Jan Kiszka <jan.kiszka@web.de>, Peter Xu <peterx@redhat.com>
Subject: [PATCH v1 00/11] KVM: x86: break the xAPIC barrier
Date: Thu, 30 Jun 2016 22:54:18 +0200	[thread overview]
Message-ID: <20160630205429.16480-1-rkrcmar@redhat.com> (raw)

RFC: http://www.spinics.net/lists/kvm/msg132036.html

This series allows userspace to create and send interrupts to VCPUs with
APIC ID > 255.

v1: 32 bit API extensions now use a toggleable capability called
KVM_CAP_X2APIC_API.

* new [1/11], loosely related and should have been posted long ago
* [2/11] improved comment for kvm_apic_map_get_dest_lapic() [Peter]
* [3/11] use round_up [Peter]
* [6/11] drop big endian format in lapic get/set ioctl [Paolo]
* [6/11] exclude APICv optimization of APIC ID register
* [6/11] rename __kvm_apic_state_fixup() parameter
* new [7/11], split from the previous patch
* [8/11] added r-b [Peter]
* [10/11] rewritten with a toggleable capability [Paolo]
* [10/11] dropped MSI_ADDR_EXT_DEST_ID to enforce reserved bits

Latest Linux, FreeBSD, and Windows run fine, but I haven't tested VFIO.
Linux works even with APIC ID over 255.  (QEMU and seabios patches to
achieve that are not yet posted.)


Radim Krčmář (11):
  KVM: x86: bump KVM_SOFT_MAX_VCPUS to 240
  KVM: x86: add kvm_apic_map_get_dest_lapic
  KVM: x86: dynamic kvm_apic_map
  KVM: x86: use u16 for logical VCPU mask in lapic
  KVM: x86: use generic function for MSI parsing
  KVM: x86: use hardware-compatible format for APIC ID register
  KVM: VMX: optimize APIC ID read with APICv
  KVM: x86: directly call recalculate_apic_map on lapic restore
  KVM: x86: reset lapic base in kvm_lapic_reset
  KVM: x86: add KVM_CAP_X2APIC_API
  KVM: x86: bump MAX_VCPUS to 288

 Documentation/virtual/kvm/api.txt |  26 +++
 arch/x86/include/asm/kvm_host.h   |  17 +-
 arch/x86/kvm/irq_comm.c           |  29 ++--
 arch/x86/kvm/lapic.c              | 357 ++++++++++++++++++--------------------
 arch/x86/kvm/lapic.h              |   9 +-
 arch/x86/kvm/vmx.c                |   5 +-
 arch/x86/kvm/x86.c                |  14 ++
 include/uapi/linux/kvm.h          |   1 +
 8 files changed, 248 insertions(+), 210 deletions(-)

-- 
2.9.0

             reply	other threads:[~2016-06-30 20:55 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-30 20:54 Radim Krčmář [this message]
2016-06-30 20:54 ` [PATCH v1 01/11] KVM: x86: bump KVM_SOFT_MAX_VCPUS to 240 Radim Krčmář
2016-07-01  8:42   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 02/11] KVM: x86: add kvm_apic_map_get_dest_lapic Radim Krčmář
2016-07-01  7:57   ` Paolo Bonzini
2016-07-01 12:39     ` Radim Krčmář
2016-06-30 20:54 ` [PATCH v1 03/11] KVM: x86: dynamic kvm_apic_map Radim Krčmář
2016-06-30 22:15   ` Andrew Honig
2016-07-01  8:42     ` Paolo Bonzini
2016-07-01 12:44       ` Radim Krčmář
2016-07-01 14:03         ` Paolo Bonzini
2016-07-01 14:38           ` Radim Krčmář
2016-07-01 15:06             ` Paolo Bonzini
2016-07-01 15:12               ` Paolo Bonzini
2016-07-01 15:43                 ` Radim Krčmář
2016-07-01 16:38                   ` Paolo Bonzini
2016-07-01 15:35               ` Radim Krčmář
2016-07-01  7:33   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 04/11] KVM: x86: use u16 for logical VCPU mask in lapic Radim Krčmář
2016-07-01  7:56   ` Paolo Bonzini
2016-07-01 12:48     ` Radim Krčmář
2016-07-01 14:04       ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 05/11] KVM: x86: use generic function for MSI parsing Radim Krčmář
2016-07-01  8:42   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 06/11] KVM: x86: use hardware-compatible format for APIC ID register Radim Krčmář
2016-07-01  8:33   ` Paolo Bonzini
2016-07-01 13:11     ` Radim Krčmář
2016-07-01 14:12       ` Paolo Bonzini
2016-07-01 14:54         ` Radim Krčmář
2016-07-01 15:07           ` Paolo Bonzini
2016-07-01 15:53             ` Radim Krčmář
2016-07-01 16:37               ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 07/11] KVM: VMX: optimize APIC ID read with APICv Radim Krčmář
2016-07-01  8:42   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 08/11] KVM: x86: directly call recalculate_apic_map on lapic restore Radim Krčmář
2016-07-01  8:43   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 09/11] KVM: x86: reset lapic base in kvm_lapic_reset Radim Krčmář
2016-07-01  8:43   ` Paolo Bonzini
2016-06-30 20:54 ` [PATCH v1 10/11] KVM: x86: add KVM_CAP_X2APIC_API Radim Krčmář
2016-07-01  8:24   ` Paolo Bonzini
2016-07-01 13:25     ` Radim Krčmář
2016-07-01 18:09   ` David Matlack
2016-07-01 18:31     ` Radim Krčmář
2016-06-30 20:54 ` [PATCH v1 11/11] KVM: x86: bump MAX_VCPUS to 288 Radim Krčmář
2016-07-01  8:43   ` 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=20160630205429.16480-1-rkrcmar@redhat.com \
    --to=rkrcmar@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=jan.kiszka@web.de \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=tianyu.lan@intel.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 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.