All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Wu, Feng" <feng.wu@intel.com>
To: Paolo Bonzini <pbonzini@redhat.com>,
	"alex.williamson@redhat.com" <alex.williamson@redhat.com>,
	"joro@8bytes.org" <joro@8bytes.org>,
	"mtosatti@redhat.com" <mtosatti@redhat.com>
Cc: "eric.auger@linaro.org" <eric.auger@linaro.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Wu, Feng" <feng.wu@intel.com>
Subject: RE: [PATCH v9 00/18] Add VT-d Posted-Interrupts support - including prerequisite series
Date: Fri, 18 Sep 2015 15:38:46 +0000	[thread overview]
Message-ID: <E959C4978C3B6342920538CF579893F00271D181@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <55FC2BE7.4010405@redhat.com>



> -----Original Message-----
> From: Paolo Bonzini [mailto:pbonzini@redhat.com]
> Sent: Friday, September 18, 2015 11:21 PM
> To: Wu, Feng; alex.williamson@redhat.com; joro@8bytes.org;
> mtosatti@redhat.com
> Cc: eric.auger@linaro.org; kvm@vger.kernel.org;
> iommu@lists.linux-foundation.org; linux-kernel@vger.kernel.org
> Subject: Re: [PATCH v9 00/18] Add VT-d Posted-Interrupts support - including
> prerequisite series
> 
> 
> 
> On 18/09/2015 17:08, Wu, Feng wrote:
> >
> >
> >> -----Original Message-----
> >> From: Paolo Bonzini [mailto:pbonzini@redhat.com]
> >> Sent: Friday, September 18, 2015 10:59 PM
> >> To: Wu, Feng; alex.williamson@redhat.com; joro@8bytes.org;
> >> mtosatti@redhat.com
> >> Cc: eric.auger@linaro.org; kvm@vger.kernel.org;
> >> iommu@lists.linux-foundation.org; linux-kernel@vger.kernel.org
> >> Subject: Re: [PATCH v9 00/18] Add VT-d Posted-Interrupts support - including
> >> prerequisite series
> >>
> >>
> >>
> >> On 18/09/2015 16:29, Feng Wu wrote:
> >>> VT-d Posted-Interrupts is an enhancement to CPU side Posted-Interrupt.
> >>> With VT-d Posted-Interrupts enabled, external interrupts from
> >>> direct-assigned devices can be delivered to guests without VMM
> >>> intervention when guest is running in non-root mode.
> >>>
> >>> You can find the VT-d Posted-Interrtups Spec. in the following URL:
> >>>
> >>
> http://www.intel.com/content/www/us/en/intelligent-systems/intel-technolog
> >> y/vt-directed-io-spec.html
> >>
> >> Thanks.  I will squash patches 2 and 14 together, and drop patch 3.
> >>
> >> Signed-off-bys are missing in patch 1 and 4.  The patches exist
> >> elsewhere in the mailing list archives, so not a big deal.  Or just
> >> reply to them with the S-o-b line.
> >>
> >
> > Thanks for your quick response, Paolo! I didn't change the code
> > in patch 1 and 4, do I need to add s-o-b, if needed, I can reply
> > the patches.
> 
> Yes, the s-o-b just means that the code passed through your hands.

Done.
> 
> Note that I replied to patch 17, but no need to resend that one
> either---just mailing list discussion is enough.

Do you mean you replied to patch 17 just now, but I don't find your replies
in the mailing list.

Thanks,
Feng

> 
> Paolo
> 
> > Thanks,
> > Feng
> >
> >> Alex, can you ack the series and review patch 12?
> >>
> >> Joerg, can you ack patch 18?
> >>
> >> Paolo
> >>
> >>> v9:
> >>> - Include the whole series:
> >>> [01/18]: irq bypasser manager
> >>> [02/18] - [06/18]: Common non-architecture part for VT-d PI and ARM side
> >> forwarded irq
> >>> [07/18] - [18/18]: VT-d PI part
> >>>
> >>> v8:
> >>> refer to the changelog in each patch
> >>>
> >>> v7:
> >>> * Define two weak irq bypass callbacks:
> >>>   - kvm_arch_irq_bypass_start()
> >>>   - kvm_arch_irq_bypass_stop()
> >>> * Remove the x86 dummy implementation of the above two functions.
> >>> * Print some useful information instead of WARN_ON() when the
> >>>   irq bypass consumer unregistration fails.
> >>> * Fix an issue when calling pi_pre_block and pi_post_block.
> >>>
> >>> v6:
> >>> * Rebase on 4.2.0-rc6
> >>> * Rebase on https://lkml.org/lkml/2015/8/6/526 and
> >> http://www.gossamer-threads.com/lists/linux/kernel/2235623
> >>> * Make the add_consumer and del_consumer callbacks static
> >>> * Remove pointless INIT_LIST_HEAD to 'vdev->ctx[vector].producer.node)'
> >>> * Use dev_info instead of WARN_ON() when irq_bypass_register_producer
> >> fails
> >>> * Remove optional dummy callbacks for irq producer
> >>>
> >>> v4:
> >>> * For lowest-priority interrupt, only support single-CPU destination
> >>> interrupts at the current stage, more common lowest priority support
> >>> will be added later.
> >>> * Accoring to Marcelo's suggestion, when vCPU is blocked, we handle
> >>> the posted-interrupts in the HLT emulation path.
> >>> * Some small changes (coding style, typo, add some code comments)
> >>>
> >>> v3:
> >>> * Adjust the Posted-interrupts Descriptor updating logic when vCPU is
> >>>   preempted or blocked.
> >>> * KVM_DEV_VFIO_DEVICE_POSTING_IRQ -->
> >> KVM_DEV_VFIO_DEVICE_POST_IRQ
> >>> * __KVM_HAVE_ARCH_KVM_VFIO_POSTING -->
> >> __KVM_HAVE_ARCH_KVM_VFIO_POST
> >>> * Add KVM_DEV_VFIO_DEVICE_UNPOST_IRQ attribute for VFIO irq, which
> >>>   can be used to change back to remapping mode.
> >>> * Fix typo
> >>>
> >>> v2:
> >>> * Use VFIO framework to enable this feature, the VFIO part of this series is
> >>>   base on Eric's patch "[PATCH v3 0/8] KVM-VFIO IRQ forward control"
> >>> * Rebase this patchset on
> >> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git,
> >>>   then revise some irq logic based on the new hierarchy irqdomain
> patches
> >> provided
> >>>   by Jiang Liu <jiang.liu@linux.intel.com>
> >>>
> >>>
> >>> *** BLURB HERE ***
> >>>
> >>> Alex Williamson (1):
> >>>   virt: IRQ bypass manager
> >>>
> >>> Eric Auger (4):
> >>>   KVM: arm/arm64: select IRQ_BYPASS_MANAGER
> >>>   KVM: create kvm_irqfd.h
> >>>   KVM: introduce kvm_arch functions for IRQ bypass
> >>>   KVM: eventfd: add irq bypass consumer management
> >>>
> >>> Feng Wu (13):
> >>>   KVM: x86: select IRQ_BYPASS_MANAGER
> >>>   KVM: Extend struct pi_desc for VT-d Posted-Interrupts
> >>>   KVM: Add some helper functions for Posted-Interrupts
> >>>   KVM: Define a new interface kvm_intr_is_single_vcpu()
> >>>   KVM: Make struct kvm_irq_routing_table accessible
> >>>   KVM: make kvm_set_msi_irq() public
> >>>   vfio: Register/unregister irq_bypass_producer
> >>>   KVM: x86: Update IRTE for posted-interrupts
> >>>   KVM: Implement IRQ bypass consumer callbacks for x86
> >>>   KVM: Add an arch specific hooks in 'struct kvm_kernel_irqfd'
> >>>   KVM: Update Posted-Interrupts Descriptor when vCPU is preempted
> >>>   KVM: Update Posted-Interrupts Descriptor when vCPU is blocked
> >>>   iommu/vt-d: Add a command line parameter for VT-d posted-interrupts
> >>>
> >>>  Documentation/kernel-parameters.txt   |   1 +
> >>>  Documentation/virtual/kvm/locking.txt |  12 ++
> >>>  MAINTAINERS                           |   7 +
> >>>  arch/arm/kvm/Kconfig                  |   2 +
> >>>  arch/arm/kvm/Makefile                 |   1 +
> >>>  arch/arm64/kvm/Kconfig                |   2 +
> >>>  arch/arm64/kvm/Makefile               |   1 +
> >>>  arch/x86/include/asm/kvm_host.h       |  24 +++
> >>>  arch/x86/kvm/Kconfig                  |   3 +
> >>>  arch/x86/kvm/Makefile                 |   3 +
> >>>  arch/x86/kvm/irq_comm.c               |  32 ++-
> >>>  arch/x86/kvm/lapic.c                  |  59 ++++++
> >>>  arch/x86/kvm/lapic.h                  |   2 +
> >>>  arch/x86/kvm/trace.h                  |  33 ++++
> >>>  arch/x86/kvm/vmx.c                    | 361
> >> +++++++++++++++++++++++++++++++++-
> >>>  arch/x86/kvm/x86.c                    | 108 +++++++++-
> >>>  drivers/iommu/irq_remapping.c         |  12 +-
> >>>  drivers/vfio/pci/Kconfig              |   1 +
> >>>  drivers/vfio/pci/vfio_pci_intrs.c     |   9 +
> >>>  drivers/vfio/pci/vfio_pci_private.h   |   2 +
> >>>  include/linux/irqbypass.h             |  90 +++++++++
> >>>  include/linux/kvm_host.h              |  29 +++
> >>>  include/linux/kvm_irqfd.h             |  71 +++++++
> >>>  virt/kvm/Kconfig                      |   3 +
> >>>  virt/kvm/eventfd.c                    | 142 +++++++------
> >>>  virt/kvm/irqchip.c                    |  10 -
> >>>  virt/kvm/kvm_main.c                   |   3 +
> >>>  virt/lib/Kconfig                      |   2 +
> >>>  virt/lib/Makefile                     |   1 +
> >>>  virt/lib/irqbypass.c                  | 257
> >> ++++++++++++++++++++++++
> >>>  30 files changed, 1182 insertions(+), 101 deletions(-)
> >>>  create mode 100644 include/linux/irqbypass.h
> >>>  create mode 100644 include/linux/kvm_irqfd.h
> >>>  create mode 100644 virt/lib/Kconfig
> >>>  create mode 100644 virt/lib/Makefile
> >>>  create mode 100644 virt/lib/irqbypass.c
> >>>

  reply	other threads:[~2015-09-18 15:39 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-18 14:29 [PATCH v9 00/18] Add VT-d Posted-Interrupts support - including prerequisite series Feng Wu
2015-09-18 14:29 ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 01/18] virt: IRQ bypass manager Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 15:34   ` Wu, Feng
2015-09-18 15:34     ` Wu, Feng
2015-09-18 14:29 ` [PATCH v9 02/18] KVM: x86: select IRQ_BYPASS_MANAGER Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 03/18] KVM: arm/arm64: " Feng Wu
2015-09-21 19:32   ` Eric Auger
2015-09-18 14:29 ` [PATCH v9 04/18] KVM: create kvm_irqfd.h Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 15:35   ` Wu, Feng
2015-09-18 15:35     ` Wu, Feng
2015-09-18 14:29 ` [PATCH v9 05/18] KVM: introduce kvm_arch functions for IRQ bypass Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 06/18] KVM: eventfd: add irq bypass consumer management Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 07/18] KVM: Extend struct pi_desc for VT-d Posted-Interrupts Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 08/18] KVM: Add some helper functions for Posted-Interrupts Feng Wu
2015-09-18 14:29 ` [PATCH v9 09/18] KVM: Define a new interface kvm_intr_is_single_vcpu() Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 10/18] KVM: Make struct kvm_irq_routing_table accessible Feng Wu
2015-09-18 14:29 ` [PATCH v9 11/18] KVM: make kvm_set_msi_irq() public Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 12/18] vfio: Register/unregister irq_bypass_producer Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 17:19   ` Alex Williamson
2015-09-18 17:19     ` Alex Williamson
2015-09-21  8:56   ` Wu, Feng
2015-09-21  8:56     ` Wu, Feng
2015-09-21  9:32     ` Paolo Bonzini
2015-09-21  9:32       ` Paolo Bonzini
2015-09-21 11:35       ` Wu, Feng
2015-09-21 11:35         ` Wu, Feng
2015-09-21 12:06         ` Paolo Bonzini
2015-09-21 12:06           ` Paolo Bonzini
2015-09-21 12:08           ` Wu, Feng
2015-09-21 12:08             ` Wu, Feng
2015-09-21 12:53       ` Wu, Feng
2015-09-21 12:53         ` Wu, Feng
2015-09-21 13:02         ` Paolo Bonzini
2015-09-21 19:46           ` Eric Auger
2015-09-21 19:46             ` Eric Auger
2016-04-26 20:08   ` Alex Williamson
2016-04-26 20:08     ` Alex Williamson
2016-04-27  1:32     ` Wu, Feng
2016-04-27  1:32       ` Wu, Feng
2016-04-28 16:40       ` Alex Williamson
2016-04-28 16:40         ` Alex Williamson
2016-04-28 15:35     ` Eric Auger
2016-04-28 15:35       ` Eric Auger
2015-09-18 14:29 ` [PATCH v9 13/18] KVM: x86: Update IRTE for posted-interrupts Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 14/18] KVM: Implement IRQ bypass consumer callbacks for x86 Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 15/18] KVM: Add an arch specific hooks in 'struct kvm_kernel_irqfd' Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 16/18] KVM: Update Posted-Interrupts Descriptor when vCPU is preempted Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 14:29 ` [PATCH v9 17/18] KVM: Update Posted-Interrupts Descriptor when vCPU is blocked Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-18 16:06   ` Paolo Bonzini
2015-09-18 16:06     ` Paolo Bonzini
2015-09-19  7:11     ` Wu, Feng
2015-09-19  7:11       ` Wu, Feng
2015-09-21  2:16     ` Wu, Feng
2015-09-21  5:32       ` Paolo Bonzini
2015-09-21  5:32         ` Paolo Bonzini
2015-09-21  5:45         ` Wu, Feng
2015-09-21  5:45           ` Wu, Feng
2015-10-14 23:41   ` David Matlack
2015-10-15  1:33     ` Wu, Feng
2015-10-15  1:33       ` Wu, Feng
2015-10-15 17:39       ` David Matlack
2015-10-15 18:13         ` Paolo Bonzini
2015-10-15 18:13           ` Paolo Bonzini
2015-10-16  1:45           ` Wu, Feng
2015-10-16  1:45             ` Wu, Feng
2015-09-18 14:29 ` [PATCH v9 18/18] iommu/vt-d: Add a command line parameter for VT-d posted-interrupts Feng Wu
2015-09-18 14:29   ` Feng Wu
2015-09-21 13:46   ` Joerg Roedel
2015-09-21 13:46     ` Joerg Roedel
2015-09-18 14:58 ` [PATCH v9 00/18] Add VT-d Posted-Interrupts support - including prerequisite series Paolo Bonzini
2015-09-18 14:58   ` Paolo Bonzini
2015-09-18 15:08   ` Wu, Feng
2015-09-18 15:08     ` Wu, Feng
2015-09-18 15:21     ` Paolo Bonzini
2015-09-18 15:21       ` Paolo Bonzini
2015-09-18 15:38       ` Wu, Feng [this message]
2015-09-18 17:57   ` Alex Williamson
2015-09-18 17:57     ` Alex Williamson
2015-09-25  1:49 ` Wu, Feng
2015-09-25  1:49   ` Wu, Feng
2015-09-25 11:14   ` Paolo Bonzini
2015-09-25 11:14     ` Paolo Bonzini
2015-09-28 10:14     ` Wu, Feng
2015-09-28 10:14       ` Wu, Feng
2015-09-28 10:18       ` Paolo Bonzini
2015-09-28 10:18         ` Paolo Bonzini
2015-09-28 10:22         ` Wu, Feng
2015-09-28 10:22           ` 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=E959C4978C3B6342920538CF579893F00271D181@SHSMSX104.ccr.corp.intel.com \
    --to=feng.wu@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=eric.auger@linaro.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=joro@8bytes.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mtosatti@redhat.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 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.