--- v3
+++ v7
@@ -22,46 +22,71 @@
reported by CPUID.
This patchset is to enable swiotlb bounce buffer for netvsc/storvsc
-in Isolation VM.
+drivers in Isolation VM.
-This version follows Michael Kelley suggestion in the following link.
-https://lkml.org/lkml/2021/11/24/2044
+Change since v6:
+ * Fix compile error in hv_init.c and mshyperv.c when swiotlb
+ is not enabled.
+ * Change the order in the cc_platform_has() and check sev first.
+
+Change sicne v5:
+ * Modify "Swiotlb" to "swiotlb" in commit log.
+ * Remove CONFIG_HYPERV check in the hyperv_cc_platform_has()
+
+Change since v4:
+ * Remove Hyper-V IOMMU IOMMU_INIT_FINISH related functions
+ and set SWIOTLB_FORCE and swiotlb_unencrypted_base in the
+ ms_hyperv_init_platform(). Call swiotlb_update_mem_attributes()
+ in the hyperv_init().
+
+Change since v3:
+ * Fix boot up failure on the host with mem_encrypt=on.
+ Move calloing of set_memory_decrypted() back from
+ swiotlb_init_io_tlb_mem to swiotlb_late_init_with_tbl()
+ and rmem_swiotlb_device_init().
+ * Change code style of checking GUEST_MEM attribute in the
+ hyperv_cc_platform_has().
+ * Add comment in pci-swiotlb-xen.c to explain why add
+ dependency between hyperv_swiotlb_detect() and pci_
+ xen_swiotlb_detect().
+ * Return directly when fails to allocate Hyper-V swiotlb
+ buffer in the hyperv_iommu_swiotlb_init().
Change since v2:
- * Remove Hyper-V dma ops and dma_alloc/free_noncontiguous. Add
- hv_map/unmap_memory() to map/umap netvsc rx/tx ring into extra
- address space.
- * Leave mem->vaddr in swiotlb code with phys_to_virt(mem->start)
- when fail to remap swiotlb memory.
+ * Remove Hyper-V dma ops and dma_alloc/free_noncontiguous. Add
+ hv_map/unmap_memory() to map/umap netvsc rx/tx ring into extra
+ address space.
+ * Leave mem->vaddr in swiotlb code with phys_to_virt(mem->start)
+ when fail to remap swiotlb memory.
Change since v1:
- * Add Hyper-V Isolation support check in the cc_platform_has()
- and return true for guest memory encrypt attr.
- * Remove hv isolation check in the sev_setup_arch()
+ * Add Hyper-V Isolation support check in the cc_platform_has()
+ and return true for guest memory encrypt attr.
+ * Remove hv isolation check in the sev_setup_arch()
Tianyu Lan (5):
- Swiotlb: Add Swiotlb bounce buffer remap function for HV IVM
+ swiotlb: Add swiotlb bounce buffer remap function for HV IVM
x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has()
- hyperv/IOMMU: Enable swiotlb bounce buffer for Isolation VM
+ hyper-v: Enable swiotlb bounce buffer for Isolation VM
scsi: storvsc: Add Isolation VM support for storvsc driver
- hv_netvsc: Add Isolation VM support for netvsc driver
+ net: netvsc: Add Isolation VM support for netvsc driver
+ arch/x86/hyperv/hv_init.c | 12 +++
arch/x86/hyperv/ivm.c | 28 ++++++
- arch/x86/kernel/cc_platform.c | 15 ++++
- arch/x86/xen/pci-swiotlb-xen.c | 3 +-
+ arch/x86/kernel/cc_platform.c | 8 ++
+ arch/x86/kernel/cpu/mshyperv.c | 15 +++-
drivers/hv/hv_common.c | 11 +++
drivers/hv/vmbus_drv.c | 4 +
- drivers/iommu/hyperv-iommu.c | 56 ++++++++++++
drivers/net/hyperv/hyperv_net.h | 5 ++
drivers/net/hyperv/netvsc.c | 136 +++++++++++++++++++++++++++++-
drivers/net/hyperv/netvsc_drv.c | 1 +
drivers/net/hyperv/rndis_filter.c | 2 +
drivers/scsi/storvsc_drv.c | 37 ++++----
include/asm-generic/mshyperv.h | 2 +
- include/linux/hyperv.h | 14 +++
+ include/linux/hyperv.h | 6 ++
include/linux/swiotlb.h | 6 ++
- kernel/dma/swiotlb.c | 47 +++++++++--
- 15 files changed, 342 insertions(+), 25 deletions(-)
+ kernel/dma/swiotlb.c | 43 +++++++++-
+ 15 files changed, 294 insertions(+), 22 deletions(-)
--
2.25.1