All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/17] irqfd and ioeventfd support for mshv
@ 2021-06-02 17:20 Vineeth Pillai
  2021-06-02 17:20 ` [PATCH 01/17] hyperv: Few TLFS definitions Vineeth Pillai
                   ` (16 more replies)
  0 siblings, 17 replies; 27+ messages in thread
From: Vineeth Pillai @ 2021-06-02 17:20 UTC (permalink / raw)
  To: Nuno Das Neves, Wei Liu, Sunil Muthuswamy, Michael Kelley,
	Vitaly Kuznetsov
  Cc: Vineeth Pillai, K. Y. Srinivasan, virtualization, linux-kernel,
	linux-hyperv

This patch series adds irqfd and ioeventfd support for VMMs on Hyper-V.
Also adds support for in-kernel MSI irq routing framework. Both these
features are inspired from the kvm implementation and all credits to kvm
developers.

Patches 1-11 are preparatory patches for enabling irqfd/ioeventfd. Hyper-v
features like ports, connections, doorbell etc needs to be enabled to
implement irqfd and ioeventfd feature.

Patches 12-15 implements irqfd and ioeventfd, and 16 and 17 implements the
in-kernel MSI routing framework.

This patchset is rebased on Nuno's root partition ioctl interface series:
https://lkml.org/lkml/2021/5/28/820
---

Vineeth Pillai (17):
  hyperv: Few TLFS definitions
  drivers: hv: vmbus: Use TLFS definition for VMBUS_MESSAGE_SINT
  acpi: export node_to_pxm
  hyperv: Wrapper for setting proximity_domain_info
  mshv: SynIC event ring and event flags support
  mshv: SynIC port and connection hypercalls
  hyperv: Configure SINT for Doorbell
  mshv: Port id management
  mshv: Doorbell handler in hypercall ISR
  mshv: Doorbell register/unregister API
  mshv: HvClearVirtualInterrupt hypercall
  mshv: Add irqfd support for mshv
  mshv: Add ioeventfd support for mshv
  mshv: Notifier framework for EOI for level triggered interrupts
  mshv: Level-triggered interrupt support for irqfd
  mshv: User space controlled MSI irq routing for mshv
  mshv: Use in kernel MSI routing for irqfd

 arch/x86/hyperv/hv_init.c               |  32 +-
 arch/x86/hyperv/hv_proc.c               |  15 +-
 arch/x86/include/asm/hyperv-tlfs.h      |   2 +
 arch/x86/include/asm/mshyperv.h         |   2 +
 arch/x86/include/uapi/asm/hyperv-tlfs.h |   2 +
 drivers/acpi/numa/srat.c                |   1 +
 drivers/hv/Kconfig                      |   1 +
 drivers/hv/Makefile                     |   3 +-
 drivers/hv/hv_call.c                    | 181 ++++++
 drivers/hv/hv_eventfd.c                 | 723 ++++++++++++++++++++++++
 drivers/hv/hv_portid_table.c            |  83 +++
 drivers/hv/hv_synic.c                   | 383 +++++++++++--
 drivers/hv/hyperv_vmbus.h               |   2 +-
 drivers/hv/mshv.h                       |  52 ++
 drivers/hv/mshv_main.c                  |  96 +++-
 drivers/hv/mshv_msi.c                   | 128 +++++
 include/asm-generic/hyperv-tlfs.h       | 106 +++-
 include/asm-generic/mshyperv.h          |  14 +
 include/linux/hyperv.h                  |   9 -
 include/linux/mshv.h                    |  65 ++-
 include/linux/mshv_eventfd.h            |  78 +++
 include/uapi/asm-generic/hyperv-tlfs.h  |  81 +++
 include/uapi/linux/mshv.h               |  48 ++
 23 files changed, 2043 insertions(+), 64 deletions(-)
 create mode 100644 drivers/hv/hv_eventfd.c
 create mode 100644 drivers/hv/hv_portid_table.c
 create mode 100644 drivers/hv/mshv_msi.c
 create mode 100644 include/linux/mshv_eventfd.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2021-06-30 15:03 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-02 17:20 [PATCH 00/17] irqfd and ioeventfd support for mshv Vineeth Pillai
2021-06-02 17:20 ` [PATCH 01/17] hyperv: Few TLFS definitions Vineeth Pillai
2021-06-02 17:20 ` [PATCH 02/17] drivers: hv: vmbus: Use TLFS definition for VMBUS_MESSAGE_SINT Vineeth Pillai
2021-06-02 17:20 ` [PATCH 03/17] acpi: export node_to_pxm Vineeth Pillai
2021-06-02 17:20 ` [PATCH 04/17] hyperv: Wrapper for setting proximity_domain_info Vineeth Pillai
2021-06-02 17:20 ` [PATCH 05/17] mshv: SynIC event ring and event flags support Vineeth Pillai
2021-06-02 17:20 ` [PATCH 06/17] mshv: SynIC port and connection hypercalls Vineeth Pillai
2021-06-10 12:19   ` Vitaly Kuznetsov
2021-06-10 12:19     ` Vitaly Kuznetsov
2021-06-29 12:55     ` Wei Liu
2021-06-29 16:19       ` Vineeth Pillai
2021-06-29 13:06   ` Wei Liu
2021-06-29 16:21     ` Vineeth Pillai
2021-06-30 10:44   ` Wei Liu
2021-06-30 11:10   ` Wei Liu
2021-06-30 15:03     ` Vineeth Pillai
2021-06-02 17:20 ` [PATCH 07/17] hyperv: Configure SINT for Doorbell Vineeth Pillai
2021-06-02 17:20 ` [PATCH 08/17] mshv: Port id management Vineeth Pillai
2021-06-02 17:20 ` [PATCH 09/17] mshv: Doorbell handler in hypercall ISR Vineeth Pillai
2021-06-02 17:20 ` [PATCH 10/17] mshv: Doorbell register/unregister API Vineeth Pillai
2021-06-02 17:20 ` [PATCH 11/17] mshv: HvClearVirtualInterrupt hypercall Vineeth Pillai
2021-06-02 17:20 ` [PATCH 12/17] mshv: Add irqfd support for mshv Vineeth Pillai
2021-06-02 17:20 ` [PATCH 13/17] mshv: Add ioeventfd " Vineeth Pillai
2021-06-02 17:20 ` [PATCH 14/17] mshv: Notifier framework for EOI for level triggered interrupts Vineeth Pillai
2021-06-02 17:21 ` [PATCH 15/17] mshv: Level-triggered interrupt support for irqfd Vineeth Pillai
2021-06-02 17:21 ` [PATCH 16/17] mshv: User space controlled MSI irq routing for mshv Vineeth Pillai
2021-06-02 17:21 ` [PATCH 17/17] mshv: Use in kernel MSI routing for irqfd Vineeth Pillai

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.