[Pull Request][kinetic/linux-azure] Azure: Add PCI pass thru to CVMs

Tim Gardner tim.gardner at canonical.com
Mon May 8 18:14:08 UTC 2023


BugLink: https://bugs.launchpad.net/bugs/2015369

SRU Justification

[Impact]

Microsoft has requested the inclusion of this patch set:

https://lore.kernel.org/linux-hyperv/1679838727-87310-1-git-send-email-mikelley@microsoft.com/T/

[Regression Potential]

Private memory mappings could be incorrect.

[Test Plan]

Microsoft tested with success.

[Other Info]

SF: #00355859

----------------------------------------------------------------------------
The following changes since commit a70f4dfe3bda868700187ab3073a566fa9a4135b:

   UBUNTU: Ubuntu-azure-5.19.0-1026.29 (2023-04-24 07:35:21 -0600)

are available in the Git repository at:

   git://git.launchpad.net/~timg-tpi/ubuntu/+source/linux/+git/kinetic 
kinetic-azure-Add-PCI-pass-thru-to-cvm-lp2015369

for you to fetch changes up to 8fda1bef5c074a262be35d7205c5eae9f4410d33:

   PCI: hv: Replace retarget_msi_interrupt_params with 
hyperv_pcpu_input_arg (2023-05-08 11:43:56 -0600)

----------------------------------------------------------------
Dexuan Cui (5):
       UBUNTU: SAUCE: Drivers: hv: vmbus: Revert Dexuan's changes to 
hv_ringbuffer_init()
       UBUNTU: SAUCE: Drivers: hv: vmbus: Hardcode MMIO resources in 
vmbus_walk_resources() when necessary
       UBUNTU: SAUCE: x86/hyperv: Support hypercalls for TDX guests (part 2)
       Drivers: hv: vmbus: Remove the per-CPU post_msg_page
       PCI: hv: Replace retarget_msi_interrupt_params with 
hyperv_pcpu_input_arg

Jinank Jain (4):
       x86/hyperv: Add support for detecting nested hypervisor
       Drivers: hv: Setup synic registers in case of nested root partition
       x86/hyperv: Add an interface to do nested hypercalls
       Drivers: hv: Enable vmbus driver for nested root partition

Michael Kelley (13):
       x86/ioremap: Add hypervisor callback for private MMIO mapping in 
coco VM
       x86/hyperv: Reorder code to facilitate future work
       Drivers: hv: Explicitly request decrypted in vmap_pfn() calls
       x86/mm: Handle decryption/re-encryption of bss_decrypted consistently
       init: Call mem_encrypt_init() after Hyper-V hypercall init is done
       x86/hyperv: Change vTOM handling to use standard coco mechanisms
       UBUNTU: SAUCE: swiotlb: Remove bounce buffer remapping for Hyper-V
       UBUNTU: SAUCE: Drivers: hv: vmbus: Remove second mapping of VMBus 
monitor pages
       Drivers: hv: vmbus: Remove second way of mapping ring buffers
       hv_netvsc: Remove second mapping of send and recv buffers
       x86/hyperv: Block root partition functionality in a Confidential VM
       Drivers: hv: Don't remap addresses that are above shared_gpa_boundary
       PCI: hv: Enable PCI pass-thru devices in Confidential VMs

  arch/x86/coco/core.c                |  40 ++++++++++++++++++------
  arch/x86/hyperv/hv_init.c           |  21 +++----------
  arch/x86/hyperv/ivm.c               | 153 
++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------
  arch/x86/include/asm/coco.h         |   1 -
  arch/x86/include/asm/hyperv-tlfs.h  |  20 +++++++++++-
  arch/x86/include/asm/mem_encrypt.h  |   1 +
  arch/x86/include/asm/mshyperv.h     |  88 
++++++++++++++++++++++++++++++++---------------------
  arch/x86/include/asm/x86_init.h     |   4 +++
  arch/x86/kernel/apic/io_apic.c      |  10 ++++--
  arch/x86/kernel/cpu/mshyperv.c      | 110 
++++++++++++++++++++++++++++++++++++++++++++++++++++--------------
  arch/x86/kernel/x86_init.c          |   2 ++
  arch/x86/mm/ioremap.c               |   5 +++
  arch/x86/mm/mem_encrypt_amd.c       |  10 ++++--
  arch/x86/mm/pat/set_memory.c        |   3 --
  drivers/hv/Kconfig                  |   1 -
  drivers/hv/channel_mgmt.c           |   2 +-
  drivers/hv/connection.c             | 115 
+++++++++++++++++----------------------------------------------------
  drivers/hv/hv.c                     |  76 
++++++++++++++++++----------------------------
  drivers/hv/hv_common.c              |  44 ++++++++++++++++++---------
  drivers/hv/hyperv_vmbus.h           |   6 ----
  drivers/hv/ring_buffer.c            |  66 
++++++++++++----------------------------
  drivers/hv/vmbus_drv.c              |  14 +++++++--
  drivers/net/hyperv/hyperv_net.h     |   2 --
  drivers/net/hyperv/netvsc.c         |  48 ++---------------------------
  drivers/pci/controller/pci-hyperv.c | 280 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------
  include/asm-generic/hyperv-tlfs.h   |  23 ++++++++++++++
  include/asm-generic/mshyperv.h      |   5 +--
  include/linux/swiotlb.h             |   2 --
  init/main.c                         |  19 +++++++-----
  kernel/dma/swiotlb.c                |  47 +---------------------------
  30 files changed, 643 insertions(+), 575 deletions(-)

-- 
-----------
Tim Gardner
Canonical, Inc



More information about the kernel-team mailing list